为了账号安全,请及时绑定邮箱和手机立即绑定

PHP cUrl 和 cookie GX_SESSION_ID

PHP cUrl 和 cookie GX_SESSION_ID

PHP
MMMHUHU 2022-07-02 17:03:38
我被这件事困住了。我正在尝试自动化网站表单中的查询并使用 PHP 处理返回响应。我的代码实际上有效,但仅当我添加以下标题时:$headers = [    'Cookie: GX_SESSION_ID=zWfdnmlQgtodK0ax97epfsbma9J0tvVI%2B%2BelShsOIZo%3D; JSESSIONID=E1378A4864FFF03AF4B8BAA0CBB88D89;',];curl_setopt($cURLConnection, CURLOPT_HTTPHEADER, $headers);JSESSIONID var 不是问题,没有它脚本运行良好。但是,如果我没有使用有效的 gx 会话 id(我从浏览网站的 google chrome 获取)声明GX_SESSION_ID var,则脚本不起作用。当我用谷歌浏览器浏览网站时,只要我进入网站。cookie 在请求标头中发送。我不明白这个 var 是如何创建的。你能帮我把它重新创建到我的 cURL PHP 代码中吗?创建一个 calid GX_SESSION_ID 而不需要从浏览器手动获取它?谢谢你们
查看完整描述

1 回答

?
白板的微信

TA贡献1883条经验 获得超3个赞

使用 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);


查看完整回答
反对 回复 2022-07-02
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号