我正在制作一个PHP脚本,它可以像网站上的API一样无法提供。我正在使用curl并且该网站使用javascript发布cookie,所以我无法阅读它们。
是否有PHP类或PHP模块可以读取javascript,存储cookie并让我用curl重新提交给所提到的页面?
我在某处读过可以从Java读取PHP,所以也许JS / PHP有类似的方法吗?
答案 0 :(得分:5)
你最好的办法是尝试从php中读取cookie。 Javascript无法与php本身交谈,但php可以获取javascript创建的cookie。
http://php.net/manual/en/features.cookies.php接着说:
从中发送给您的任何Cookie 客户端将自动包含在内 进入$ _COOKIE自动全局数组...
希望这有帮助!
答案 1 :(得分:1)
您需要检查写入cookie的javascript的逻辑并尝试使用php复制它。服务器将无法验证您的脚本或javascript是否已设置cookie,因为javascript正在客户端上运行。
答案 2 :(得分:0)
听起来你的脚本会在网站和客户端“之间”?例如。客户端调用您的API,然后您登录到假装是客户端的站点,然后传回结果?
如果是这样,那么该网站设置的所有Cookie都将通过页面标题返回。您可以通过调用
来访问它们curl_setopt($handle, CURLOPT_HEADER, true);
在您请求页面之前。当您获得返回的页面时,它将在其开头具有HTTP标头。然后,您可以在标题中搜索任何“set-cookie”行,它们将包含该站点尝试发送客户端的cookie的详细信息。