3

我从 Facebook 的教程中了解到,有人点击您的 Facebook 应用程序并被带到您的应用程序页面:http ://apps.facebook.com/example_app

然后 Facebook 使用您的画布 URL 打开一个 iframe 并使用该signed_request参数执行 POST。该参数包含您需要的所有信息,如果用户接受了您的申请,请检查它。如果不是,请重定向到 OAuth 2 流。如果他们有,那么 signed_request 将包含他们的 user_id。

不幸的是,当我点击我的 facebook 应用程序时,我没有传递任何 signed_request 参数!这是我在 POST 请求正文中传递的内容:

fb_sig_in_iframe = 1&fb_sig_locale = EN_US&fb_sig_in_new_facebook = 1&fb_sig_time = 1316465522.5989&fb_sig_added = 1&fb_sig_profile_update_time = 1280164553&fb_sig_expires = 1316469600&fb_sig_user = 111111111&fb_sig_session_key = fb_sig_ss = 222222222222222&fb_sig_cookie_sig = 333333333333&fb_sig_ext_perms =电子邮件&fb_sig_country = US&fb_sig_api_key = 44444444444444&fb_sig_app_id = 555555555555&fb_sig = 66666666666

是上面的还是signed_request?我很困惑......我怎样才能得到用户的access_token和他的user_id?

4

1 回答 1

3

默认情况下,不会为所有(尤其是较旧的)应用程序启用此功能,您需要在应用程序的高级设置中启用一项设置,在“迁移”下启用画布应用程序的签名请求

于 2011-09-19T22:09:23.770 回答