cURL témoin de la syntaxe de bash CLI, pas de fichier de cookies)
J'ai un serveur web qui me renvoie la même valeur de cookie qui je l'ai envoyé à ma demande. Pour cela, j'ai été en utilisant le fichier de cookie avec succès (moins d'un mineur speed bump originaires avec les tabulations en espaces problème dans le fichier de cookies).
Malheureusement, si je lance la même commande, mais avec le nom du cookie et la valeur de la commande plutôt que dans le fichier de cookie, mon serveur ne répond pas avec les résultats souhaités.
Selon le cURL docs, quelque chose comme cela devrait fonctionner:
curl --cookie 'cookiename=cookievalue' --cookie-jar - http://my.site.com/page/with/cookies -v
Mais il ne le fait pas. Cependant, si j'utilise la délimité par des tabulations fichier cookie au lieu de les paramètres en ligne de commande, il fonctionne avec succès. Quoi de plus est que j'ai essayé à peu près chaque permutation de ces cookies params à la CLI en vain: délimité par des tabulations, nom=cookiename;valeur=cookievalue(etc), avec des virgules, avec le chemin d'accès, comme --en-tête, etc etc.
Quand je compare les requêtes sortantes side-by-side, je ne vois pas de différence apparente entre le succès et l'échec de la demande, mais la réponse ne retourne pas les résultats escomptés si je passe les cookies dans la ligne de commande sans utiliser le fichier de cookies. Ce subtile mais importante nuance suis-je surplombant ici?
--cookie
ou --cookie-jar
? Et êtes-vous redirige suivantes avec -L/--location
que soit le scénario?lorsque j'utilise mon fichier cookie-cookie, j'obtiens les résultats que je veux. Lorsque j'utilise --cookie "name=val", je ne sais pas. Dans les deux cas, je ne suis pas à l'aide de L et ne devraient pas, pour les fins de cet exercice.
êtes-vous seul, citant des variables? les variables doivent guillemets ou en fin de compte vous envoyer la chaîne de caractères "cookiename=$MONCOOKIE" pour le serveur, et il dit alors non, pas de cookie de correspondance "$MONCOOKIE" ici.
qu'est-ce qui ne fonctionne pas? si votre serveur ne fait rien, mais imprimer les cookies -- à l'aide de PHP
phpinfo()
fonction, par exemple-type de sortie voyez-vous?OriginalL'auteur JT Gray | 2012-02-10
Vous devez vous connecter pour publier un commentaire.
J'étais curieux de voir si ce serait un problème sur mon serveur, et ce que j'aurais besoin pour le résoudre.
Première chose que j'ai testé à l'aide d'un navigateur, d'étudier le comportement de base.
Pour commencer, je suis connecté assurez-vous qu'aucun des témoins ont été fixés pour le moment:
Puis je l'ai connecté à mon script pour définir un cookie.
Et puis j'ai vérifié pour s'assurer que le navigateur a été l'envoi de ce nouveau cookie:
Une fois que j'ai vérifié le navigateur/serveur de comportement, il était temps de faire bouger les choses à partir de la ligne de commande à l'aide de
curl
.Nous allons d'abord voir ce qui se passe quand on n'est pas d'essayer et d'envoyer un cookie au serveur:
Et voici le résultat:
Ensuite, nous allons voir ce qui se passe quand nous envoyons un cookie, à l'aide de
--cookie
comme mentionné dans la question:Et cela démontre que le
--cookie
paramètre ne travail et peut-être que l'OP a d'autres problèmes en cours qui pourraient avoir besoin d'un peu de débogage.Alors maintenant, juste pour le plaisir, nous allons voir ce qui se passe lorsque nous utilisons un fichier "cookie" et appelez le réglage de témoin script:
Voici ce que cookie ressemble dans le fichier:
Et maintenant, nous allons appeler le cookie testeur et utiliser le fichier de cookies de ce temps.
J'espère que cette aide avec le débogage cookie questions que n'importe qui peut avoir.
Et voici les fichiers que j'ai utilisé sur mon serveur, dans mon
/test
chemin.Ici est /www/test/testcookie.php:
Et voici /www/test/setcookie.php:
OriginalL'auteur dldnh