使用curl加载cookie并发布数据
如果我加载 cookie,我就能够访问需要 cookie 的页面,如下所示:
$cookie = ".ASPXAUTH=Secret";
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
没问题,我可以运行 curl_exec
,并查看需要 cookie 的页面。
如果我还想发送一些发布数据,我可以这样做:
$data = array(
'index' => "Some data is here"
);
$cookie = ".ASPXAUTH=Secret";
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
我已经在我的上设置了一个 转储脚本本地服务器,看看它是否工作。如果我仅发送cookie,我可以在http标头中看到它,如果我仅发送post数据,我可以看到post数据。
当我发送两者时,我只看到 cookie。
为什么?
If I load in a cookie, I am able to get to the page that requires cookies, like this:
$cookie = ".ASPXAUTH=Secret";
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
No problem here, I can run curl_exec
, and see the page that requires cookies.
If I also want to send some post data, I can do like this:
$data = array(
'index' => "Some data is here"
);
$cookie = ".ASPXAUTH=Secret";
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
I have set up a dump script on my local server, to see if it is working. If i send only the cookie, I can see it in the http headers, and if I send only the post data, I can see the post data.
When I send both, I see only the cookie.
Why?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我终于找到了解决办法。
如果我使用自定义 http_header 手动设置 cookie,我就能得到想要的结果。
即使在不同的服务器上尝试 - 相同的结果。
I finally found a solution.
If I manually set the cookie, using a custom http_header, I am able to get the results wanted.
Even tried on different servers - same results.