2012-01-20 72 views
0

我正在尝试制作Facebook页面选项卡,用户可以从一堆嵌入文件中为自己喜欢的视频或音乐曲目投票。我需要从每个用户获得一个唯一的ID,以确保他们只能投一次。 signed_request只包含用户的ID,如果他们已经授权我的应用程序。从页面选项卡验证用户

我试图让用户使用的FB.login()的JavaScript API授权我的应用程序,但我得到的错误:

An error occurred with Remix // Rework Vote. Please try later

API Error Code: 191

API Error Description: The specified URL is not owned by the application

Error Message: Invalid redirect_uri: Given URL is not permitted by the application configuration.

据我所知,我没有设置任何重定向URL。我是否需要将它设置在某处,或者这是不正确的方法让用户认证我的页面选项卡?

+2

您是否在应用程序设置中正确配置了“App Domain”? –

+0

@JuicyScripter号它不会让我设置一个:'错误 您指定的应用程序域,但没有指定网站的网址或移动Web URL [域]必须从您的网站的网址或导出使用移动网络URL.'我看不到设置这些选项的位置,可能是因为我只使用页面选项卡,而不是站点或移动站点。 – rjmunro

回答

0

必须指定“网站网址”(或“移动Web URL”)和“应用程序域”,以使用OAuth流...

看到以填补https://developers.facebook.com/docs/authentication/#redirect-uris

+0

我必须使用OAuth流程还是在页面选项卡画布页面上下文中有其他有效的方法?我没有特别的愿意使用OAuth,我只需要从Facebook获得一个唯一的ID,并且'FB.login()'似乎是根据我找到的文档所需要的。 – rjmunro

+0

'FB.login'正在使用OAuth流程,因此您需要使用OAuth来验证用户身份。 –

+0

当然,但是我必须使用'FB.login',还是有其他方法?据我所知,'FB.login'可能完全页面选项卡错误的事情,它只是我发现那种看起来依稀权的第一件事。 – rjmunro

0

等等细节我通过在应用程序设置中勾选“Facebook上的应用程序”,并将Canvas URLSecure Canvas URL设置为与“页面标签”URL等效项相同,即可设置该功能。

即使这不是一个完整的应用程序,它只是一个页面选项卡,它不会作为一个应用程序,除非它是在一个容器页面。

我猜这是Facebook中的一个错误 - UI意味着你可以只有一个页面标签的应用程序。文档没有说你不能,我想不出一个好的技术理由,因为它不会将页面标签URL视为有效的URL。

感谢@julio-santos指向我Facebook - Error Message: redirect_uri is not owned by the application,这似乎是在稍有不同的上下文中相同的问题。