![](/img/trans.png)
[英]php curl jsessionid how to save and use save session id and cookie
[英]PHP cUrl and cookie GX_SESSION_ID
我被這件事困住了。
我正在嘗試自動化網站表單中的查詢並使用 PHP 處理返回響應。 我的代碼實際上有效,但僅當我添加以下標題時:
$headers = [
'Cookie: GX_SESSION_ID=zWfdnmlQgtodK0ax97epfsbma9J0tvVI%2B%2BelShsOIZo%3D; JSESSIONID=E1378A4864FFF03AF4B8BAA0CBB88D89;',
];
curl_setopt($cURLConnection, CURLOPT_HTTPHEADER, $headers);
JSESSIONID 變量不是問題,沒有它腳本運行良好。 但是,如果我不使用有效的 gx 會話 ID(我從瀏覽網站的 google chrome 獲取)聲明GX_SESSION_ID 變量,則腳本不起作用。
當我用谷歌瀏覽器瀏覽網站時,我一進入網站。 cookie 在請求頭中發送。
我不明白這個 var 是如何創建的。
你能幫我把它重新創建到我的 cURL PHP 代碼中嗎? 創建一個 calid GX_SESSION_ID 而無需從瀏覽器手動獲取它?
謝謝你們
使用 curl 獲取 cookie 變量作為數組:
$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// get headers too with this line
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
// get cookie
// multi-cookie variant contributed by @Combuster in comments
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);
$cookies = array();
foreach($matches[1] as $item) {
parse_str($item, $cookie);
$cookies = array_merge($cookies, $cookie);
}
var_dump($cookies);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.