[Perl] CORS et Dancer2
Patrice Karatchentzeff
patrice.karatchentzeff at gmail.com
Lun 5 Juin 20:01:27 CEST 2023
Merci. Je l'avais vu, mais comme il est taggué Dancer et non Dancer2, je
pense qu'il ne conviendra pas.
Merci
PK
Le lun. 5 juin 2023 à 13:57, Sébastien Feugère <sebastien at feugere.net> a
écrit :
> Il faudra sûrement résoudre le problème à la base pour passer le site en
> production. Je recommanderais l’utilisation d’un plug-in Dancer qui permet
> d’activer CORS sur toutes les routes souhaitées:
>
> Dancer::Plugin::CORS::Sharing
> <https://metacpan.org/pod/Dancer::Plugin::CORS::Sharing>
> metacpan.org <https://metacpan.org/pod/Dancer::Plugin::CORS::Sharing>
> [image: apple-touch-icon.png]
> <https://metacpan.org/pod/Dancer::Plugin::CORS::Sharing>
> <https://metacpan.org/pod/Dancer::Plugin::CORS::Sharing>
>
>
> Sébastien Feugère
>
> Le 5 juin 2023 à 13:44, Patrice Karatchentzeff <
> patrice.karatchentzeff at gmail.com> a écrit :
>
> Bon, j'ai viré le problème en réussissant à désactiver CORS dans la
> requête de départ en javascript. Mais le problème demeure...
>
> Et j'avais une erreur stupide :
>
> get '/login' => sub {
> my $post = from_json( request->body );
> print $post;
> };
>
> C'est un post et pas un get :(
>
> PK
>
> Le lun. 5 juin 2023 à 09:52, Patrice Karatchentzeff
> <patrice.karatchentzeff at gmail.com> a écrit :
>
>
> Salut,
>
>
> J'ai un truc bizarre avec Dancer2. J'ai besoin d'autoriser CORS et
>
> pour le dév, je le mets à tout le monde (*) pour ne pas me prendre la
>
> tête. Dancer2 est pour le back-end et j'ai un front-end en javascript
>
> (React Native)/
>
>
> Le plus simple est de faire un hook avant une route :
>
>
> hook 'before' => sub {
>
> response_header 'Access-Control-Allow-Origin' => '*';
>
> };
>
>
> Si je veux lire un JSON sur le serveur (GET), ça fonctionne.
>
>
> get '/message' => sub {
>
> my @data = ( {
>
> id => 1,
>
> username => 42,
>
> name => 100234,
>
> email => [qw(one two three)],
>
> },
>
> {
>
> id => 2,
>
> username => "toto",
>
> name => "SiSi",
>
> email => [qw(4 5 6)],
>
> },
>
> );
>
> send_as JSON => \@data;
>
> };
>
>
> Si je veux en envoyer un (POST), le débogueur m'indique que la requête
>
> est interdite, parce que CORS n'est pas actif !
>
>
> get '/login' => sub {
>
> my $post = from_json( request->body );
>
> print $post;
>
> };
>
>
> J'ai essayé de généraliser avec Plack :
>
>
> use Plack::Builder;
>
>
> builder {
>
> enable 'CrossOrigin', origins => '*';
>
> dance;
>
> };
>
>
> Mais ça ne fonctionne pas mieux :(
>
>
> Est-ce que vous avez une piste pour me dépanner ?
>
>
> Merci
>
>
> PK
>
>
> --
>
> |\ _,,,---,,_ Patrice KARATCHENTZEFF
>
> ZZZzz /,`.-'`' -. ;-;;,_ mailto:patrice.karatchentzeff at gmail.com
>
> |,4- ) )-,_. ,\ ( `'-'
>
> '---''(_/--' `-'\_)
>
>
>
>
> --
> |\ _,,,---,,_ Patrice KARATCHENTZEFF
> ZZZzz /,`.-'`' -. ;-;;,_ mailto:patrice.karatchentzeff at gmail.com
> |,4- ) )-,_. ,\ ( `'-'
> '---''(_/--' `-'\_)
> _______________________________________________
> Perl mailing list
> Perl at mongueurs.net
> http://listes.mongueurs.net/mailman/listinfo/perl
> Attention, les archives sont publiques
>
> _______________________________________________
> Perl mailing list
> Perl at mongueurs.net
> http://listes.mongueurs.net/mailman/listinfo/perl
> Attention, les archives sont publiques
--
|\ _,,,---,,_ Patrice KARATCHENTZEFF
ZZZzz /,`.-'`' -. ;-;;,_ mailto:patrice.karatchentzeff at gmail.com
|,4- ) )-,_. ,\ ( `'-'
'---''(_/--' `-'\_)
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://listes.mongueurs.net/archives/perl/attachments/20230605/215a3581/attachment-0001.html>
-------------- section suivante --------------
Une pièce jointe autre que texte a été nettoyée...
Nom: apple-touch-icon.png
Type: image/png
Taille: 10523 octets
Desc: non disponible
URL: <http://listes.mongueurs.net/archives/perl/attachments/20230605/215a3581/attachment-0001.png>
Plus d'informations sur la liste de diffusion Perl