使用需要facebook身份验证的应用程序API

使用需要facebook身份验证的应用程序API,facebook,authentication,Facebook,Authentication,我希望我的网站能够进行API调用,以取代使用Facebook进行身份验证的移动应用程序。用户将使用Facebook登录,就像他们对应用程序所做的一样,然后,我的服务器将不再发送应用程序API调用,而是执行此操作 如果我想为我的帐户发送请求,很简单,我只需通过访问该应用程序来代表该应用程序生成一个身份验证令牌 facebook.com/dialog/oauth?client\u id=app\u id\u here&redirect\u uri=facebook.com/connect/login

我希望我的网站能够进行API调用,以取代使用Facebook进行身份验证的移动应用程序。用户将使用Facebook登录,就像他们对应用程序所做的一样,然后,我的服务器将不再发送应用程序API调用,而是执行此操作

如果我想为我的帐户发送请求,很简单,我只需通过访问该应用程序来代表该应用程序生成一个身份验证令牌

facebook.com/dialog/oauth?client\u id=app\u id\u here&redirect\u uri=facebook.com/connect/login\u success.html

并在响应的“位置”字段中找到访问令牌

为了让我的网站做到这一点,我需要能够访问其他人生成的身份验证令牌,即打开一个带有URL的对话框,如

facebook.com/dialog/oauth?client\u id=app\u id\u here&redirect\u uri=my.website

这不起作用,因为应用程序配置为不允许:

应用程序配置不允许给定URL:应用程序的设置不允许一个或多个给定URL。它必须与网站URL或画布URL匹配,或者域必须是应用程序域之一的子域

由于跨原产地政策,我也无法在客户端执行此操作:

XMLHttpRequest无法加载facebook.com/dialog/oauth?。。。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“localhost:8000”

除了允许进行跨源请求的chrome扩展之外,还有其他方法可以做到这一点吗


注意:所有https://都是因为信誉不足而故意修改的。

只需转到应用程序仪表板,配置给定URL以访问Facebook应用程序。

您所要做的就是修复应用程序设置,以便“给定URL不被…允许”消息消失。这个错误已经被讨论过无数次了,所以请做一些适当的研究当然,你不能通过AJAX调用登录对话框——它必须在顶部窗口实例中调用,以便用户可以通过地址栏验证他们不在钓鱼网站上。这不是我的应用程序。我想我忘了说清楚。我想为第三方应用程序创建一个web客户端。这是不可能的。