1

我已经为我的画布应用程序提供了向 Facebook 发布操作所需的一切。发布操作后,我的时间轴中会显示一条消息,例如“John 在 {SomeObject} 上执行了操作”。一切正常,但我点击的 {SomeObject} 在一个窗口中打开,而不是在我的应用程序通常工作的 facebook iframe 中打开。此链接的 URL 呈现如下:

https://www.facebook.com/connect/uiserver.php?app_id={my_app_id}&method=permissions.request&redirect_uri={my_object_url}&response_type=code&display=page&auth_referral=1&fb_private_mode_enc={some_text_string}

我应该怎么做才能让我点击的对象在 facebook iframe 中打开,而不是在窗口中打开?我可以在这个 URL 中以某种方式将 display=page 更改为 display=iframe 吗?
谢谢!

4

1 回答 1

0

我也遇到过这个问题——我希望能够将用户直接引导到我的画布应用程序。除此之外,除非 {my_object_url} 的 HTML 中的元数据与 Facebook 期望看到的一致,否则该链接将解析为“此应用程序有问题”对话框。

一个可能的解决方法,而不是 100% 的答案:允许重定向,但是在被重定向到的页面的元数据中,将 HTML 刷新回应用程序画布?这会将用户重定向回应用程序。

如果您需要将它们定向到应用程序的特定页面,您可以在 canvas-redirect URL 之外使用 app_data签名请求。

希望这可以帮助。虽然不是银弹。

PG

于 2012-06-14T03:08:44.780 回答