我试图将网站的所有Cookie都放入PHP中的数组中。该脚本的目标是输入网站URL并让脚本检查设置了哪些cookie。
我尝试过像这样使用HTTP_Request:
$req = new HTTP_Request($url);
$req->setMethod(HTTP_REQUEST_METHOD_GET);
$req->sendRequest();
$cookies = $req->getResponseCookies();
但这只是返回服务器端设置的cookie(如会话ID)。我还想收到使用javascript设置的Cookie,例如Google Analytics Cookie。
我知道这是可能的,因为网站:http://www.cookie-checker.com/能够这样做。确保" cookie-checker"网站真正解析javascript设置的cookie而不仅仅是解析已知的javascript源URL,我已经扫描了一个编写虚拟javascript cookie的测试网站。他们成功地检测到了这个cookie(包括名称,价值和到期日期)。
非常感谢任何帮助!
提前致谢。
百里
答案 0 :(得分:4)
网站无法访问其他网站设置的Cookie。
浏览器(必须)确保不会发生这种情况。
您提到的网站是向服务器发出请求并解析(也是javascript)其内容。
您需要做的是确保您的脚本解析所有javascript并跟踪使用它设置的Cookie。
答案 1 :(得分:1)
Google Analytics Cookie由javasvascript设置,而不是在http请求的响应中。使用HTTP_Request是不可能的,使用PHP是不可能的......
你需要一个javascript intepreter来获取cookie,或者一些无头浏览器(也许是Zombie.js?)