SlimerJS添加了onAuthPrompt
回调。有可能让它与CasperJS一起使用吗?
我发现提及phantomjs或slimerjs对象可以casper.page
获得,然后以下答案说casper.page
仅在调用casper.start()
后可用:https://stackoverflow.com/a/16629231/841830 < / p>
所以我尝试了这段代码。 onAuthPrompt
代码取自文档;我刚刚添加了一个日志行以确保它有效。
casper.test.begin("first",function suite(test){
casper.start();
casper.page.onAuthPrompt = function (type, url, realm, credentials) {
console.log("onAuthPrompt: type="+type+",url="+url+",realm="+realm+",credentials="+credentials); //TEMP
credentials.username = "laurent";
credentials.password = "1234";
return true;
};
casper.thenOpen(url,function(){
console.log('Loaded:'+url);
test.assertSelectorHasText('#msg','');
this.capture('1.png');
});
casper.run(function(){test.done();});
});
它加载url
(不需要auth),然后建立XMLHttpRequest
或EventSource
连接,这需要身份验证。我看到密码提示弹出,但我的onAuthPrompt()
函数没有被调用。
我做错了什么,或者这不是onAuthPrompt的用途,或者它可能是我可以报告的错误(但在这种情况下,你认为问题出在CasperJS或SlimerJS中吗?)。
答案 0 :(得分:1)