我遇到了在需要访问facebook的页面之间传递数据的问题。
这是一个简单的例子:
第1页 - 有数据({str:" 123"})(但仍然没有获得Facebook访问权限)
然后它重定向到facebook_authentication,重定向到redirect_uri(第2页)
第2页 - 需要从第一页获取数据,但它被facebook auth对话框中断。(第2页需要facebook访问权限才能提交str数据)。
有什么方法可以将数据从第一页通过auth对话框传递到第2页? 像这样:auth_url..parameters ..?str = 123 然后我会在第2页中得到它,就像这样$ _GET [' str'];
答案 0 :(得分:1)
我们在oAuth流程实施过程中遇到的同样问题,两个可能的解决方案是
如果是用户特定数据,我建议使用1。
答案 1 :(得分:1)
我写了一个在facebook上运行的应用程序,并且还必须处理这个问题。我用过这样的东西
$sAppId = '12345567999455';
$sFBUrl = 'http://www.facebook.com/pages/<name>/<id>?sk=app_<app_id>&app_data=key:val;key:val';
$sDialogUrl = 'https://www.facebook.com/dialog/oauth?client_id=' . $sAppId . '&redirect_uri=' . urlencode($sFBUrl)
echo "<script>top.location.href='" . $sDialogUrl . "'</script>";
然后解析数据
$aAppData = explode(';', $aSignedRequest['app_data']);
这为我们提供了一个案例解决方案
https://www.facebook.com/dialog/oauth?client_id=app_id&redirect_uri=your_url?str=123
在我的上一个应用程序中,我使用了我在此解释的技巧:SSO Website-Network with Facebook Login
此致