主要要求: 1.商家点击安装,将他们带到apps.facebook.com/myapp 2.我需要检查一下我的Facebook个人资料是否有数据库记录 3. N:显示业务输入唯一代码的页面。保存配置文件ID和代码 4. Y:显示与该业务相关的数据库中的数据。
问题: 我在Facebook创建了应用程序并创建了一个单页的ASP.NET网站。该应用程序在IIS下的我的开发机器上运行。当我在Facebook上访问该应用程序时,它会点击我的页面。我使用API密钥检索并验证signed_request。但是,解码的有效负载仅包含SHA256参数,不包含用户,oauth或配置文件数据。
我还需要做其他事情,还是我的做法完全错误? 感谢任何关于此的指导。
答案 0 :(得分:0)
您是否需要用户身份验证,进行完全握手?
您是否在Facebook应用中启用了“OAvas 2.0 for Canvas(beta)”迁移?这是您的应用配置的最后一个标签。
答案 1 :(得分:0)
如果在画布页面内访问iframe的用户未授权您的应用,则signed_request中的有效负载将如下所示:
{ “算法”: “HMAC-SHA256” “issued_at”:1286824906 }
另一方面,如果您的用户已授权您的应用,则signed_request中的有效负载将如下所示:
{ “算法”: “HMAC-SHA256” “过期”:1286827200, “issued_at”:1286821560, “oauth_token”:“一些令牌”, “user_id”:“一些ID” }
因为您在有效负载内缺少user_id,所以听起来用户尚未授权您的应用。