我訪問使用名爲session_id的變量的REST api服務。這樣做的API調用存儲在cookie中,我做到這一點,如下所示:使用CURL的PHP:有沒有一種方法來模擬cookie而不是將其保存到文件中?
$ch = curl_init(); // initialize curl handle
curl_setopt($ch, CURLOPT_URL, $url); //set target URL
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);// allow redirects
curl_setopt($ch, CURLOPT_COOKIEFILE, './Cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, './Cookie.txt');
curl_setopt($ch, CURLOPT_POST, TRUE); // set POST method
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); //set headers
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE); //return the headers so we can get session id
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, FALSE); //prevent unverified SSL certificate error
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //prevent unverified SSL ""
$contents = curl_exec($ch);
curl_close($ch);
現在的問題是,這是由許多不同的用戶名爲許多不同的時間。 (這麼多不同的cookie文件必須保存)我想要一種方式來簡單地將session_id存儲在變量中而不是引用cookie文件。到目前爲止,我所有的嘗試都被服務拒絕。任何人都可以建議方法來存儲會話ID和Cookie信息,而不保存到文件?請注意,閱讀會話ID是沒有問題的,它以XML返回。出於某種原因傳遞它而不引用實際生成的文件不會傳遞安全憑證。關於這可能是爲什麼的更多信息也會有所幫助。
此網站真的拼出來了http://docstore.mik.ua/orelly/webprog/pcook/ch11_04.htm – Praesagus 2016-09-29 16:57:44