![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 1 Dołączył: 13.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Mam duży problem z poberaniem sesji przez curl. Mam 2 requesty pierwszy zbiera sesję, drugi wykonuje zapytanie w post (który wymaga sesji). Problem w tym, że ten pierwszy nie pobiera mi poprawnie sesji. Gdy odpalam stronę przez curl, w headerze strony wyrzuca mi atrybut np."Set-Cookie: JSESSIONID=07tP-hXzHurc-bL9bpOvVzmK; Path=/; HttpOnly", później gdy wrzucam go jako sesję w drugim curlu to strona wyrzuca mi "<partial-response>". Po każdym odświeżeniu strony JSESSIONID zmienia wartość. W momencie jednak, gdy kopiuje sesję z przeglądarki wszysko śmiga. Starałem się dopisywać atrybuty jak leci i dalej nic. Jak sprawić, żeby strona poprawnie utworzyła sesję? Pierwszy curl wyglada tak: Kod $chh = curlinit(); curlsetopt($chh, CURLOPT_URL, $strona); curl_setopt($chh, CURLOPT_FOLLOWLOCATION, true); curl_setopt($chh, CURLOPT_COOKIEJAR, $tmpfname); curl_setopt($chh, CURLOPT_COOKIEFILE, $tmpfname); curl_setopt($chh, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($chh, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($chh, CURLOPT_RETURNTRANSFER, 1); curl_setopt($chh, CURLOPT_VERBOSE, 1); curl_setopt($chh, CURLOPT_COOKIESESSION, 1); curl_setopt($chh, CURLOPT_HEADER, 1); $header_size = curl_getinfo($chh, CURLINFO_HEADER_SIZE); $header = substr($response, 0, $header_size); $exp = explode("Set-Cookie:", $header); $sesja = explode("; Path=/; HttpOnly", $exp[1]); Dodam jeszcze, że strona w firefoxie wyrzuca mi np: Kod Cookie: __utma=179393144.1468963194.1462999507.1462999507.1462999507.1; _ga=GA1.3.1468963194.1462999507; JSESSIONID=UhpC5Rq4mETGZxq4wPXBgAJf Natomiast tak jak wyżej, w curlu ten atrubut to nie Cookie: tylko Set-Cookie: Ten post edytował Watt 9.02.2017, 21:38:58 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 15:47 |