2012-10-23 3 views
1

Mon script bash fait ce qui suit:Utilisation de curl dans un script bash, comment puis-je me connecter efficacement à Google Voice?

curl -k -s -c gv.cookies https://accounts.google.com/ServiceLogin -F [email protected] -F Passwd=somepassword -F service=grandcentral 

Cela semble fonctionner. Le fichier de cookies est créé, et si je relis la sortie, il pense certainement que je suis connecté

Cependant, quand je faire ceci:.

curl -k -s -b gv.cookies https://www.google.com/voice/ 

Je reçois une page « déplacé temporairement » et pas le balisage Google Voice auquel je m'attends Est-ce que je manque un paramètre à boucler qui fait qu'il utilise correctement les cookies?

Je n'ai pas besoin d'être fixé autant que j'ai besoin de quelqu'un pour me diriger dans la bonne direction.

Répondre

1

Vous devez ajouter les -b & -L drapeaux:

curl \ 
    -L \ 
    -k \ 
    -s \ 
    -c gv.cookies \ 
    -b gv.cookies \ 
    -F [email protected] \ 
    -F Passwd=somepassword \ 
    -F service=grandcentral \ 
    https://accounts.google.com/ServiceLogin 

-L, --location

(HTTP/HTTPS) Si le serveur indique que la page demandée est passé à un autre emplacement (indiqué par un Emplacement: en-tête et un code de réponse 3XX), cette option permet à curl de rétablir la demande sur le nouvel emplacement.

Et

-b, --cookie

(HTTP) transmettre les données au serveur HTTP comme un cookie. Il s'agit supposément des données précédemment reçues du serveur dans une ligne "Set-Cookie:". Les données doivent être au format "NAME1 = VALUE1; NAME2 = VALUE2".

S'il ne suffit pas, essayez de changer le pour le un par exemple.

Questions connexes