2013-07-14 222 views
0

期间获得脚本错误我有使用已经工作了一段时间精(这种特殊形式的最后改变了5月6日,并在上周我的最后一次测试周期正在MS的Facebook库AC#客户端应用程序)。这是在一个自助服务终端应用程序(仍在开发中,幸运的是)有一个嵌入式网络浏览器,以便用户可以验证和授权我们的应用程序。今天,当您点击授权页面上的任一按钮时,我开始收到脚本错误弹出窗口。Facebook的C#客户端授权

因此,我进入登录页面,用户验证,一切都很好,然后进入授权页面“想以您的名义私下发布”,但仍然不错,但是,当您点击好或跳过时,向上自带的弹出,上面写着

An error has occurred in the script on this page 
Line: 5 
Character: 878 
Error: "Access is denied." 
URL: https://static.xx.fbcdn.net/rsrc.php/v2/yG/r/q0zNT1kK_7g.js. 

现在弹出了正常的“是否要继续运行此页上的脚本”是/否选项,但再次,它卡住了。点击是或否,没关系,弹出不断弹出,我不得不手动杀死该进程。

我没有改变我的代码,但在审查了“重大更改”列表和使可能已经改变了一些应用程序设置,但如果是这样,我不知道我可以做打破这个。我已经回过头来玩了一些设置,并没有明显的效果。

这个问题也是令人沮丧的另一面是,因为我从来没有真正完成OAuth的过程中,我从来没有让我的访问令牌。然而,有些东西是煮熟的,并且它认为用户仍然登录。由于我没有访问令牌,因此我无法将它们注销,所以现在每次进入登录页面时,都会直接跳过它授权页面。很显然,如果我能通过脚本错误,我可以获取我的令牌并将用户注销。

任何建议将有所帮助。

编辑: 我把网址转到Chrome,它工作正常,所以我抓住有问题的.js找到有问题的代码。问题是一个“window.resizeBy(w,x)”,并且一些快速搜索看起来像IE可能会故意阻塞(至少是旧版本,当我在IE 10真实浏览器中尝试它时也是如此)。有趣的是,在Chrome中(但不是在IE浏览器),当它第一次打的授权屏幕之一,我得到了以下信息:

你是在一个大的浏览器窗口或 使用“弹出式”的显示类型标签。为了获得更好的用户体验,请在我们的 JavaScript SDK中显示此对话框,而不指定明确的显示类型。 SDK 将为每个环境选择最佳显示类型。另外, 一套高度和宽度上的window.open(),如果你有特殊要求使用的 SDK排除调用正确尺寸此 对话框。此消息仅对您的应用程序的开发人员可见。

这让我纳闷了:如果我能想出如何抢在嵌入式浏览器的window.open,如果我可以明确地设置大小的建议,将它,然后跳过这个调整大小造成的问题。关闭更多的研究。

回答

1

好了,所以在Chrome中所花费的时间(像往常一样)比其他任何浏览器更有价值。由于这是使用MS的Facebook客户端,而不是JS SDK,所以没有简单的方法去window.open。 Chrome中给出的另一个关键是我们使用的类型是“popup”。将其更改为键入“页面”,并且没有更多的脚本错误。授权显示在他们自己的JS弹出窗口中,应该没问题。

+0

嗨感谢解决方案的建议。你知道WPF WebBrowser的这个确切场景的任何解决方案吗? –