
Requêtes POST avec curl
Les personnes engagées dans les tests d'interface le savent, curl est un outil aussi omnipotent qu'un couteau suisse. Aujourd'hui, nous nous concentrons sur la façon d'utiliser curl POST request pour soumettre les données d'un formulaire, accessoirement, l'utilisation d'un proxy IP magique. Tout d'abord sur la commande de base :
curl -X POST -d "username=test&password=123456" http://example.com/login
Voici-X POSTSpécifiez la méthode de demande.-dSuivi des données du formulaire à soumettre. Notez que les paramètres doivent être reliés par des symboles &, n'utilisez pas d'espaces, sinon le serveur ne recevra pas les données complètes.
La bonne façon d'ouvrir un proxy IP
Il est facile d'envoyer une requête directement nue pour déclencher le mécanisme de protection du site, cette fois l'IP proxy sur le terrain. Prenons l'exemple du service ipipgo : il faut d'abord obtenir une adresse proxy :
| paramètres | valeur de l'exemple |
|---|---|
| adresse de l'agent | 123.45.67.89:8080 |
| Compte certifié | ipipgo_user123 |
| code d'authentification | passw0rd ! |
Ajouter des paramètres de proxy à curl :
curl -x http://ipipgo_user123:passw0rd!@123.45.67.89:8080
-X POST -d "content=test data" http://api.example.com/submit
dépense ou frais-xLe paramètre spécifie le serveur proxy dans le format "protocol://account:password@IP:port". Le pool de proxy d'ipipgo est mis à jour fréquemment, ce qui est particulièrement adapté aux scénarios dans lesquels un grand nombre d'adresses IP doivent être modifiées.
Pièges et contre-mesures liés à l'envoi de formulaires
Vous est-il déjà arrivé qu'un formulaire soit soumis et renvoie une erreur 403 ? Dans 80 % des cas, l'en-tête de la requête n'est pas correctement défini. La pose complète devrait être :
curl -x http://ipipgo代理地址
-H "Content-Type : application/x-www-form-urlencoded"
-H "User-Agent : Mozilla/5.0"
-X POST -d "phone=13800138000&code=6688"
http://service.example.com/verify
Il y a ici deux points essentiels :Le type de contenu (Content-Type) doit être défini correctement.Dans le cas contraire, le serveur ne reconnaît pas les données ;User-Agent pour se faire passer pour un navigateurL'UA par défaut de curl est reconnue en minutes.
Analyse de scénarios réels
Prenons un cas concret : la surveillance des prix d'une plateforme de commerce électronique. Utilisez le proxy rotatif d'ipipgo avec un script curl pour crawler toutes les heures :
! /bin/bash
for i in {1..50}
do
curl -x http://ipipgo动态代理
-d "product_id=100${i}&type=price"
-X POST https://mall.example.com/api
>> result.log
sleep 60
done
Ici, le proxy dynamique change automatiquement d'adresse IP, afin d'éviter qu'une seule adresse IP ne fasse l'objet d'une interdiction d'accès. Le nombre de connexions simultanées supporté par ipipgo est de plus de 5000, ce qui permet d'effectuer des opérations par lots sans craindre le brouillage.
Foire aux questions QA
Q : Que dois-je faire si le proxy interrompt toujours la connexion ?
R : Vérifiez d'abord si l'adresse du proxy est correcte. Il est recommandé d'utiliser l'API fournie par ipipgo pour obtenir la liste des proxys disponibles en temps réel. Le délai d'attente peut être défini à l'aide du paramètre -connect-timeout
Q:Que dois-je faire si je soumets des données chinoises erronées ?
R : Faites précéder le paramètre -d d'un-data-urlencodeou mettre les données entre guillemets : -d "name=$(printf %s 'Zhang San' | jq -sRr @uri)"
Q : Que se passe-t-il si je dois passer par un proxy HTTPS ?
R : Remplacez simplement http par https dans le paramètre -x. Les serveurs mandataires d'ipipgo prennent tous en charge les deux protocoles, et n'oubliez pas de coupler les certificats.
Guide de sélection des services proxy
Pour choisir un service d'agence, il faut tenir compte de quelques indicateurs précis :
- Taille du pool d'adresses IP : ipipgo compte plus de 2 millions de nœuds dans le monde.
- Connectivité : elle est restée supérieure à 99,2%
- Prise en charge des protocoles : compatibilité totale avec HTTP/HTTPS/Socks5
- Authentification : outre l'authentification de base, la liste blanche d'adresses IP est également prise en charge.
Récemment, j'ai aidé un client à faire un test de stress, et j'ai utilisé le proxy exclusif d'ipipgo pour fonctionner pendant 72 heures sans perdre la ligne, ce qui est vraiment plus fiable que certains services bon marché.

