Convertir curl en Perl
Convertissez des commandes curl en code Perl à l'aide de LWP::UserAgent. curl2code s'exécute entièrement dans votre navigateur via WebAssembly — vos données restent privées. Pour Python, essayez notre convertisseur curl vers Python. Pour Ruby, voir curl vers Ruby. Vous trouverez ci-dessous des exemples Perl prêts à l'emploi.
Comment copier curl depuis votre navigateur
- 1
Ouvrir les DevTools
Appuyez sur F12 ou Ctrl+Shift+I pour ouvrir les outils de développement de votre navigateur.
- 2
Aller dans l'onglet Network
Cliquez sur l'onglet Network et effectuez l'action qui déclenche la requête HTTP.
- 3
Copier comme cURL
Faites un clic droit sur la requête → Copy → Copy as cURL. Collez-la ensuite ci-dessus.
Foire Aux Questions
Qu'est-ce que Perl LWP ?
LWP (Library for WWW in Perl) est la bibliothèque client HTTP standard pour Perl. Le module LWP::UserAgent fournit un client complet avec gestion des cookies, redirections, support de proxy et SSL. Installez-le avec cpan LWP ou apt install libwww-perl. curl2code utilise LWP par défaut pour les conversions Perl.
LWP vs HTTP::Tiny vs Mojo::UserAgent — lequel utiliser ?
LWP est riche en fonctionnalités et constitue le choix traditionnel. HTTP::Tiny est un module de base (aucune installation nécessaire) — idéal pour les requêtes simples. Mojo::UserAgent est moderne avec support asynchrone et WebSocket. Pour les scripts rapides, utilisez HTTP::Tiny. Pour des fonctionnalités complètes, utilisez LWP. Pour des langages de script similaires, voir curl vers Python ou curl vers Ruby.
Comment gérer l'authentification en Perl ?
Avec LWP : $ua->default_header('Authorization' => 'Bearer token'). Pour l'authentification Basic : $ua->credentials('host:port', 'realm', 'user', 'pass'). Ou définissez les en-têtes par requête sur l'objet HTTP::Request. curl2code convertit les drapeaux -u et -H 'Authorization' vers la syntaxe Perl.
Comment envoyer des données de formulaire multipart en Perl ?
Utilisez HTTP::Request::Common : POST($url, Content_Type => 'form-data', Content => [file => ['path/file.pdf']]). LWP gère automatiquement les délimitations multipart. Pour des champs supplémentaires, ajoutez des paires clé-valeur au tableau Content. curl2code convertit les drapeaux -F vers ce format.
Comment gérer les erreurs HTTP en Perl ?
Vérifiez $response->is_success après chaque requête. Pour les détails de l'erreur : $response->status_line renvoie le code de statut et le message. LWP renvoie un objet de réponse même en cas d'erreur — vérifiez $response->code pour le statut HTTP. Utilisez die ou warn pour le rapport d'erreurs.
Comment analyser le JSON en Perl ?
Utilisez le module JSON : my $data = decode_json($response->content). Pour l'encodage : my $json = encode_json($hashref). Installez avec cpan JSON. Pour Perl 5.14+, considérez JSON::PP (module de base, sans installation). Pour plus d'outils centrés sur le JSON, voir curl vers Go.
Comment définir des délais d'expiration dans Perl LWP ?
Définissez sur le UserAgent : my $ua = LWP::UserAgent->new(timeout => 30). Cela définit le délai d'expiration global de la requête en secondes. Pour le délai de connexion spécifiquement, utilisez les options IO::Socket::SSL. Les tentatives LWP ne sont pas intégrées — implémentez-les manuellement ou utilisez LWP::UserAgent::Determined.
Comment utiliser un proxy en Perl ?
Définissez sur le UserAgent : $ua->proxy(['http', 'https'], 'http://proxy:8080'). Ou utilisez les variables d'environnement : $ua->env_proxy lit HTTP_PROXY et HTTPS_PROXY. Pour les exceptions sans proxy : $ua->no_proxy('localhost', '.internal'). curl2code convertit les drapeaux -x vers les appels de proxy LWP.
Comment envoyer une requête POST avec un corps JSON en Perl ?
Convertissez une commande curl POST comme curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL en Perl en utilisant curl2code. Le code généré utilise $ua->post($url, Content_Type => 'application/json', Content => encode_json($data)). curl2code détecte automatiquement les drapeaux -d/--data avec du contenu JSON et définit l'en-tête Content-Type approprié dans le code LWP::UserAgent.
Comment ajouter une autorisation par jeton Bearer en Perl ?
Passez curl -H "Authorization: Bearer YOUR_TOKEN" URL à curl2code et il générera le code LWP::UserAgent avec l'en-tête d'authentification : $req->header('Authorization' => 'Bearer YOUR_TOKEN'). curl2code détecte les jetons Bearer à partir des drapeaux -H "Authorization: Bearer ..." et --oauth2-bearer. Pour le Basic auth, utilisez -u user:pass.
Comment définir l''en-tête Content-Type en Perl ?
curl2code convertit curl -H "Content-Type: application/json" URL en code LWP::UserAgent avec l'en-tête approprié : $req->header('Content-Type' => 'application/json'). Pour les données -d, curl utilise par défaut application/x-www-form-urlencoded ; pour les téléchargements de formulaires -F, il utilise multipart/form-data. curl2code associe chacun à l'API LWP::UserAgent correcte.
Liens utiles
Guides curl
Codes d'erreur curl
Recherchez n'importe quel code de sortie curl — causes, corrections et astuces de débogage.
Télécharger des fichiers avec curl
Enregistrez des fichiers avec -o, -O, suivez les redirections, reprenez les téléchargements et plus encore.
SSL, TLS et proxy
Configurez les certificats, les versions TLS, les proxys HTTP/SOCKS et le DNS personnalisé.