尝试使用PhantomJS登录时,我发现了一个有趣的问题.我不知道为什么它真的发生了.
基本上你启动一个远程调试器,如下所示:
/usr/local/bin/phantomjs --web-security=no --remote-debugger-port=13379 --remote-debugger-autorun=yes /tmp/test.js
在远程调试器中:
> location.href = "https://www.mysite.com/login" > $('input[name="username_or_email"]').val('blah@email.com') > $('input[name="password"]').val('wrongpassword') > $('button[type="submit"]').submit()
在Chrome中执行此操作会在XHR请求后给我正确的"错误密码"消息,而使用phantomjs会给我一个通用错误,因为没有使用phantomjs发送cookie(我检查了标题).
我很困惑为什么phantomjs不发送带有POST请求的cookie.有谁知道我们怎么能让phantomjs发送带有所有请求的cookie呢?设置cookie文件也没有任何区别.