PhantomJS没有保存cookie

时间:2015-06-20 18:54:13

标签: javascript cookies phantomjs

我在Windows 8.1上运行最新版本的PhantomJS。这是我的代码:

console.log('cookies: ',phantom.cookies);

phantom.addCookie({
    domain:'google.com',
    path:'/',
    expires:(new Date()).getTime() + (1000 * 60 * 60),
    name:'test',
    value:'value'
});

phantom.exit();

我尝试这样称呼:

phantomjs test.js --cookies-file=cookies.txt

phantomjs test.js --cookies-file="C:\path\cookies.txt"

无论哪种方式,都没有创建cookies.txtphantom.cookies为空。如何让PhantomJS保存cookie?

1 个答案:

答案 0 :(得分:1)

--cookies-file应该是PhantomJS的一个选项而不是你的脚本。 PhantomJS还支持将命令行参数传递给脚本。您需要翻转订单:

phantomjs --cookies-file=cookies.txt test.js

当您执行此行一次时,phantom.cookies将为空,但将使用单个条目创建cookies.txt。只有当您再次执行它时,您才会看到phantom.cookies不为空。

在脚本启动之前读取cookie jar,并在退出脚本后写入。