我想知道是否可以在mysql中存储curl的会话cookie。

curl_setopt($ch, CURLOPT_COOKIEJAR, get_the_cookie());
curl_setopt($ch, CURLOPT_COOKIEFILE, get_the_cookie());

get_the_cookie()返回一个对用户唯一的.txt文件路径,
但如果可能的话,我希望能够将这个cookie存储在mysql中,而不是文件系统中。

最佳答案

cURL不允许您直接这样做,但是您可以通过在请求期间创建临时文件并根据需要手动将其内容从/传输到数据库来伪造它。
例如:

$cookiejar = // get cookies from database
$cookiejarfile = tempnam(sys_get_temp_dir());
$cookiefile = tempnam(sys_get_temp_dir());
file_put_contents($cookiejarfile, $cookiejar);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiejarfile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile);

$newcookies = file_get_contents($cookiefile);

// and now save cookies to database and clean up temp files

关于php - 在MySQL中存储curl session cookie,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9752857/

10-12 12:21