我正在尝试使用Azure移动服务创建演示网站。我开始使用移动服务门户中提供的HTML / JavaScript示例应用程序。我完全按照文档中的说明添加了身份验证。
当我的index.html页面上的JavaScript试图对Facebook进行身份验证时,我会看到一个新的浏览器窗口,显示以下错误: {“code”:401,“错误”:“错误:不是白名单来源:https://mysite.azurewebsites.net”}
发生这种情况时执行的客户端JavaScript行如下:
function logIn() {
client.login("facebook").then(refreshAuthDisplay, function (error) {
alert(error);
});
}
我认为我已根据教程完成了所有工作,并正确设置了facebook应用程序。
我特别认为这个问题是短暂的。有时它会发生,有时它不会发生。当它发生时,我连续尝试多少次并不重要,它永远不会起作用。但是,在某些时候,我在我的演示应用程序中得到了认证,并且很高兴。几天后,我回到使用这个演示应用程序,同时没有碰到任何东西,突然间我得到了这个错误。从提供错误消息的URL看来,此错误似乎来自Azure本身的移动服务。它不是来自我的应用程序,它不是来自Facebook。
非常感谢任何帮助解决这个问题!
答案 0 :(得分:3)
要确保可以从部署在不同域上的网站访问您的移动服务,您需要在中的跨源资源共享(cors)会话中添加您的主机在Azure移动服务门户中配置页面。