类似的问题和答案都没有解决我的问题。
我有两个 Facebook 应用程序。一个是另一个的测试版本,因此它们几乎相同。我测试时没有任何问题。但在实时应用程序上,我收到“redirect_uri 不属于应用程序”错误。
这个申请就是一个很好的例子。
FB.ui(
{ method: 'apprequests',
message: 'Greetings! Would you be my neighbor?',
data: 'invite_friends'
},
function (response) {
});
我什至在下一个片段中手动添加了redirect_uri。
FB.ui(
{ method: 'apprequests',
message: 'Greetings! Would you be my neighbor?',
data: 'invite_friends',
redirect_uri: location.protocol + '//' + location.host + location.pathname
},
function (response) {
});
无论哪种方式,我都会在我的实时应用程序而不是我的测试应用程序上收到“redirect_uri 不属于应用程序”错误。
在这两个应用程序中,设置都遵循此模式。
- 应用程序域:subdomain.domain.com、domain.com
- 站点网址:http://subdomain.domain.com/
- 画布 URL:http://subdomain.domain.com/Facebook/
- 安全画布 URL:https://subdomain.domain.com/Facebook/
- 页面选项卡 URL:http://subdomain.domain.com/Facebook/
- 安全页面选项卡 URL:https://subdomain.domain.com/Facebook/
我们正在使用 FB JS SDK。在这种情况下,redirect_uri 应该由 SDK 提供,据我所知它使用location.protocol + '//' + location.host + location.pathname
.
那么,如果 redirect_uri 由 SDK 提供并且我的设置正确,为什么它可以在一个应用程序中工作,而不能在另一个应用程序中工作?
请帮忙,这已经浪费了我一天多的时间。我确信这是愚蠢的事情,但我一生都找不到它。