【发布时间】:2010-10-20 16:45:08
【问题描述】:
我们已经使用 java-facebook 库已经有一段时间了(几年了),尽管我们没有通过 FB 获得任何新用户的原因之一是新用户看到一个错误,这我知道是因为 FB 的新(6 月)安全。
目前,我们有一个“简单”的 Canvas FB 应用,使用 FBML,用户可以通过以下方式访问:
http://apps.facebook.com/$MYAPP
Canvas URL 正在返回:
http://www.facebook.com/connect/uiserver.php?app_id=$APPID&next=http%3A%2F%2Fapps.facebook.com%2F$MYAPP&display=page&locale=en_US&return_session=0&fbconnect=0&canvas=1&legacy_return=1&method=permissions.request
此 URL 用于新用户(之前未授权我们的应用)返回:
API Error Code: 100
API Error Description: Invalid parameter
Error Message: next is not owned by the application.
现有用户(在 6 月之前启用该应用)可以毫无问题地访问它。
我们的网站网址指定为:
http://apps.facebook.com/$MYAPP
此错误似乎暗示站点 URL 和下一个 URL 需要在同一个域中,而不是在 facebook 上。
我已经能够将站点 URL 更改为:
http://www.OURREALAPP.com/
并且,要成为的域:
OURREALAPP.com
然后,能够更改 Canvas URL 以返回:
https://graph.facebook.com/oauth/authorize?client_id=$CLIENT_ID&redirect_uri=http%3A%2F%2Fwww.OURREALAPP.com%2F$URL%2F
这很好用,第一次。它提示许可,并显示正确的数据。但是,如果我们第二次访问它,它不会在“Facebook 框架”中显示它,也就是说,它会将用户直接发送到应用程序。
我还尝试修改 redirect_uri 以转到 apps.facebook.com/$MYAPP ...但这给了我们一个关于不拥有该 URL 的错误。
我们需要做什么?有什么想法吗?
谢谢!
【问题讨论】: