php - 将 cookie 与 CURL 结合使用

标签 php javascript api cookies curl

我正在为没有它的网站编写“API”。

基本上,我的 PHP 代码登录网站并获取我需要的数据(两种不同的传输)。

在登录时,我遇到了一些问题。该网站通过 HTTP 设置了几个 cookie,我正在使用 CURL 的 cookie 机制捕获这些 cookie。 这似乎很有效,除了他们还试图在同一响应中通过 javascript 设置 cookie。

我不需要解析 javascript,因为它们设置的 cookie 是完全可以预测的。 我需要的是以某种方式告诉 CURL 这个 cookie 存在,同时它仍然维护其他 cookie。

帮助? :)


通过 curl POST 提交登录详细信息后,我得到了这些 header :

HTTP/1.1 200 OKDate: Fri, 20 Aug 2010 09:39:14 GMT
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=ISO-8859-1
Content-Length: 492
Set-Cookie: JSESSIONID=5DE1F32B3668DABB408BBEA10C28DBD5.testmmf1; Path=/merchantlogin
Set-Cookie: loginType=M
Connection: close

这是页面内容:

<script type="text/javascript">
    var nextyear = new Date();
    nextyear.setFullYear(nextyear.getFullYear() + 1);
    document.cookie = 'login=' + document.referrer + '; expires=' + nextyear.toGMTString();
</script>

注意 Set-Cookiedocument.cookie 部分。

最佳答案

通过代码生成 cookie 文件,在向位置发出请求之前,女巫要求 cookie 通过带有选项 CURLOPT_COOKIEFILE 的 setopt 添加它

关于php - 将 cookie 与 CURL 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3529284/

相关文章:

javascript - 使用javascript文件访问android Assets 文件夹

jquery - Flickr API 错误,Json 回调

java - Spring框架启动不存在?

javascript - Javascript 中的数组

php laravel 插入查询不起作用

PHP + MySQL : Upload large spreadsheet into MySQL efficiently

php - laravel 重定向到带参数的页面

javascript - React 服务器端渲染是否等待异步调用完成?

api - 没有 HTML5 API 的地理定位

php - 如何扫描 DynamoDb 不存在