我正在尝试使用FBGraph让我的应用在用户墙上发布消息。但是,所有的API对我来说都是陌生的,我只是想改变一些事情,看看会发生什么。现在,我收到此错误消息
{
"error": {
"type": "OAuthException",
"message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration."
}
}
有没有人知道redirect_uri意味着什么?它在我的Facebook应用程序设置页面上会是什么?
答案 0 :(得分:20)
弗罗林是对的。这里只需注意..在本地测试时,您需要将其设置为:
http://localhost:3000/(或任何您的应用服务器端口)
然后,当您将其移至生产环境时,请将其设置为常规网址:
我有一个单独的Facebook应用程序,我在开发中用于测试,因此我不必在它们之间来回切换,我在设置文件中设置了密钥,该文件包含用于开发和生产应用程序的令牌
无论如何,看起来你几乎就在那里。它至少会回到回调网址。更新facebook_connect网址后应该没问题
答案 1 :(得分:13)
我不是Facebook的专家,但是当我尝试使用Facebook在网络应用程序中登录用户时,我遇到了与你几个完全相同的问题。
您在“https://graph.facebook.com/oauth/authorize”调用中指定的redirect_uri似乎必须与应用程序的Connect Url位于同一个域中。 (您可以在应用程序设置的“连接”部分设置连接URL)
此致 林
答案 2 :(得分:1)
可能需要检查您的设置>基本>基本信息>应用领域。我认为还需要为redirect_uri正确设置hat。
答案 3 :(得分:1)
我遇到了同样的问题。
就我而言,我在facebook上配置了网址网址:“http:// localhost:3000”,这是facebook的错误网址。
原因是,它缺少url的末尾,所以正确的站点url应该是: 的 “http://本地主机:3000 /”
答案 4 :(得分:0)
只需验证您的“应用ID”即可。在我的情况下,我遇到了这个问题,因为我正在使用我正在处理的其他项目中的ID。相当明显,但我失去了一些时间。
答案 5 :(得分:0)
我必须确保我也有范围:
config.omniauth :facebook, 'xxxx', 'xxx', :scope => 'offline_access,email,publish_stream'
另外,你真的需要确保等待几分钟,因为传播确实需要时间..