我正在尝试将Facebook php-sdk-v4升级为graph-sdk,在完成文档中的所有步骤后,我遇到了问题。这个想法,直到现在我们正在做的是用他的FB帐户登录我们的网站。但是现在,相反会话,v5想要accessToken,当尝试获取它时($ helper-> getAccessToken())完成返回$ _GET ['code']。发现我们的程序是在弹出窗口(colorbox)中打开FB登录页面,并且首先它抱怨它不能获取get'代码',但是如果我在新选项卡中打开它,则url具有'代码' '参数为$ _GET方法,出现此异常: Facebook \ Exceptions \ FacebookSDKException:跨站点请求伪造验证失败。持久数据中缺少必需的参数“状态”。
这是通过弹出解决的,因为它使makeUrl()(在持久性中插入'state'),但url没有'code'作为url param。因此,一种方法可以解决以其他方式存在的问题,反之亦然。
HALP。
编辑:我使用redis在facebookPersistence类中获取并设置了这些参数并解决了它