2012-05-13 12 views

Odpowiedz

20

naprawdę powinien read the documentation - to wymienione z dokładnie tych słów kluczowych, które można oczekiwać i zawiera dużo przydatnych informacji:

-b, --cookie

(HTTP) przekazać dane do serwer HTTP jako plik cookie. Jest to podobno dane otrzymane wcześniej z serwera w linii "Set-Cookie:". Dane powinny mieć format "NAZWA1 = WARTOŚĆ1; NAZWA2 = WARTOŚĆ2".

Jeśli w wierszu nie użyto symbolu "=", jest on traktowany jako nazwa pliku do odczytu do odczytu wcześniej zapisanych linii cookie z, które powinny być używane w tej sesji, jeśli są zgodne. Użycie tej metody powoduje również aktywację "parsera plików cookie" o nazwie , który spowoduje, że curl będzie również zapisywał przychodzące pliki cookie, co może być przydatne, jeśli używasz tego w połączeniu z opcją -L, - lokalizacja. Format pliku pliku do odczytu plików cookie powinien być zwykłymi nagłówkami HTTP lub formatem pliku cookie Netscape/Mozilla .

UWAGA: plik określony przez -b, --cookie jest używany tylko jako wejście. W pliku nie będą przechowywane żadne pliki cookie. Aby przechowywać pliki cookie, użyj opcji -c, - jar-jar lub możesz nawet zapisać nagłówki HTTP w pliku przy pomocy -D, --dump-header!

Jeśli ta opcja jest ustawiona więcej niż raz, ostatnią z nich będzie ta, która jest używana.

+0

Wielki odpowiedzi +1 – gahooa

+0

Dzięki. Wydaje się, że nie byłem jedyny :) –

+0

Działa jak urok! – PierreF

2

cURL może użyć pliku cookie w Netscape format. Po prostu utwórz taki plik i użyj go jako opcji CURLOPT_COOKIEFILE.

22

Można użyć curl_etopt ze stałą CURLOPT_COOKIE:

<?php 
// create a new cURL resource 
$ch = curl_init(); 

// cookies to be sent 
curl_setopt($ch, CURLOPT_COOKIE, "fruit=apple; colour=red"); 

Więcej w PHP docs

Powiązane problemy