Phantomjs 看不到 Twitter/Facebook 授权页面
Phantomjs does not see twitter/facebook authorization page
我正在测试从我们的网站添加Twitter/Facebook帐户功能。从我的网站单击"连接到推特"按钮时,我们被重定向(使用 oauth 进行验证和授权)到 推特 API 以授予访问权限等。从我的 casper 测试模块中,单击"连接到 twitter"按钮后,我从屏幕截图中看到 phantomjs 仍然存在于我当前的网站页面上,并且没有转到实际的 Twitter api 页面。有人可以在这里帮助我吗?
脚本片段:
exports.addAccount = function(options) {
this.navToAddService(); //custom function to navigate to particular page
casper.then(function() {
this.click('#add_twitter'); //this is the id of the button 'connect to twitter'
}).then(function() {
this.echo(this.getCurrentUrl());
});
};
在尝试单击按钮之前,如何更改代码以使用waitForSelector()
:
exports.addAccount = function(options) {
this.navToAddService(); //custom function to navigate to particular page
casper.waitForSelector('#add_twitter', function() {
this.click('#add_twitter'); //this is the id of the button 'connect to twitter'
}).then(function() {
this.echo(this.getCurrentUrl());
});
};
这绕过了异步代码的任何潜在计时问题。(例如,我猜navToAddService()
正在添加您尝试单击的按钮。
您就知道该按钮永远不会出现,并且可以开始对更具体的问题进行故障排除。
同样,您可以使用waitForUrl()
而不是使用then()
与所需 URL 的名称一起使用。
相关文章:
- Phantomjs 看不到 Twitter/Facebook 授权页面
- 在授权的Facebook应用程序中,应用程序,页面标签和独立网站的相同网址
- 使用 Javascript SDK,当用户尚未授权我的应用程序时,如何获取 Facebook 用户 ID
- Facebook应用程序授权
- Facebook JS API上的评论权限错误,尽管我有授权
- Facebook PHP SDK-图形错误“;已使用授权码“;页面刷新
- 获得'未授权'从Facebook Connect登录返回
- 流星Facebook无法授权
- 区分未登录的Facebook用户和已登录但尚未授权我们应用的Facebook用户
- Facebook主屏幕web应用的授权被打破了!
- 如何从Facebook javascript SDK获得授权代码
- 如何在facebook页面选项卡中授权用户
- 最佳实践的Facebook授权/行动在手机上没有插件
- Facebook API简单授权失败javascript
- 如何使用javascript授权facebook应用程序
- Facebook授权对话框无法在canvas中加载
- 在Windows 8应用中使用Javascript实现Twitter/Facebook授权
- Facebook JS SDK返回XSS错误和“user_denied”;响应而不显示授权弹出在FB.Login
- Facebook在获得授权后不会重新加载canvas
- Facebook登录没有原生Android应用程序“你已经授权”