簡體   English   中英

php curl jsessionid如何保存和使用保存會話ID和Cookie

[英]php curl jsessionid how to save and use save session id and cookie

好的,所以我下面有一個phpcurl腳本,可以抓取cookie並顯示一個頁面,我將在下面發布這些頁面。

<?php
$url = 'http://www.example.com/stats.po';
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt');
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result= curl_exec ($ch);
curl_close ($ch);
echo $result;
?>

這個腳本正確地保存了cookie文件,我在卷曲的結果上得到了它,它與會話標頭中的會話ID匹配並保存在cookie文件中。

<p>This document you requested has moved temporarily.</p> <p>http://www.example.com/stats.po&#59;JSESSIONID_oschA=GQ4ySdFRyqjk12hj45GM4c6LG0KRj8f4pzvD3YSvrql9BwdGgNyn!-1634352464">https://www.example.com/stats.po&#59;JSESSIONID_oschA=GQ4ySdFRyqjk12hj45GM4c6LG0KRj8f4pzvD3YSvrql9BwdGgNyn!-1634352464</a>.</p>

現在如何在仍使用相同Cookie的情況下轉到輸出中給我的jsession URL鏈接

我不確定,但是我認為如果您將CURLOPT_COOKIESESSION設置為1時發出第一個curl請求,那么在第二個請求中刪除該選項應該就不錯了。 我不是該主題的專家,但是CURLOPT_COOKIESESSION的文檔似乎與您所描述的症狀匹配。

這對於兩個請求仍應使用相同的cookie

<?php
function mycurl($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt');
    curl_setopt($ch, CURLOPT_HEADER, TRUE);
    curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result= curl_exec ($ch);
    curl_close ($ch);
    return $result;
}
echo mycurl("http://www.example.com/stats.po");
echo mycurl("http://www.example.com/stats2.po");
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM