Plack
(
C/CR/CRABAPP/Plack-1.0053-TRIAL.tar.gz, CRABAPP, 2024;
MetaCPAN
)
package Plack::Middleware::JSONP;
use strict;
use parent qw(Plack::Middleware);
use Plack::Util;
use URI::Escape ();
use Plack::Util::Accessor qw/callback_key/;
sub prepare_app {
my $self = shif
my $callback_key = $self->callback_key;
if ($h->get('Content-Type') =~ m!/(?:json|javascript)! &&
$env->{QUERY_STRING} =~ /(?:^|&)$callback_key=([^&]+)/) {
= $_[0] });
my $jsonp = "/**/$cb($body)";
$res->[2] = [ $jsonp ];
$h->set('Content-Length', length $jsonp);
$h->set('Con