2011-09-06 31 views
2

我公司最近刷新了我们的FaceBook应用程序,因此它使用Canvas Iframe和PHP 3.1.1 SDK。一切都很好,除了这个一直在发送错误的FQL查询:#102 - “需要用户会话”。FQL“需要用户会话”错误

这甚至意味着什么?它不会发生在所有用户身上,并且它不是对任何特定浏览器的排斥。还有其他人在问这个问题,但是我找不到任何不到一年的解决方案,而这个解决方案并没有推出“只让他们再次登录”的解决方案。

这里是FB错误数组的副本和FB对象(有几件事情出演了隐私)

Array 
(
    [error_code] => 102 
    [error_msg] => Requires user session 
    [request_args] => Array 
    (
     [0] => Array 
      (
       [key] => method 
       [value] => fql.query 
      ) 

     [1] => Array 
      (
       [key] => query 
       [value] => 
SELECT page_id 
FROM page_admin 
WHERE uid=me() AND page_id=#### 
LIMIT 1 
      ) 

     [2] => Array 
      (
       [key] => callback 
       [value] => 
      ) 

     [3] => Array 
      (
       [key] => api_key 
       [value] => ### 
      ) 

     [4] => Array 
      (
       [key] => format 
       [value] => json-strings 
      ) 

     [5] => Array 
      (
       [key] => access_token 
       [value] => ### 
      ) 

    ) 

) 
Facebook Object 
(
    [appId:protected] => ### 
    [apiSecret:protected] => ### 
    [user:protected] => 
    [signedRequest:protected] => Array 
    (
     [algorithm] => HMAC-SHA256 
     [issued_at] => 1315334757 
     [page] => Array 
      (
       [id] => ### 
       [liked] => 
       [admin] => 
      ) 

     [user] => Array 
      (
       [country] => us 
       [locale] => en_US 
       [age] => Array 
        (
         [min] => 21 
        ) 

      ) 

    ) 

    [state:protected] => 
    [accessToken:protected] => ### 
    [fileUploadSupport:protected] => 
) 

它变得非常沮丧地有这样的错误突然出现时,我们的开发团队可以”找到任何官方文件或解决方案。

我确实从去年发现了这篇文章(Requires user session error while using FQL in facebook),但它提供的解决方案与SDK 3.1.1不再相关。

任何帮助,将不胜感激。

回答

0

结果是这个问题:即使页面管理员被要求提供适当的权限,显示给属的页面l为应用程序公开征求意见。从管理员授权应用程序到我们网站的数据实际开始显示在他们的Facebook页面上时,以及每当Joe Public遇到应用程序时显示的页面会在他们表示要求他们提供权限和出错时出现延迟没有。

修改应用的公共默认页面修复了问题。

0

当前的PHP SDK 3.1.1是
https://github.com/facebook/php-sdk/

我建议更新和检查,如果你得到同样的错误信息,则可能是因为使用最新的JavaScript SDK及以上的PHP SDK不一致你用。

希望这有助于

+0

嗨,我刚刚检查了我们的SDK版本,我们目前正在使用3.1.1,所以我很抱歉。我输错了。 – Lisa

+0

如果SDK版本正常,请检查我在此线程中添加的另一个答案 –

0

也请检查您是否需要
https://developers.facebook.com/docs/reference/fql/page_admin/

它是从2011年9月22日,需要这种类型的查询manage_pages许可

希望这有助于

+0

不幸的是,这是令人困惑的部分原因,因为我们已经需要该权限。这对于全新的(并且未接受这些许可)人员以及已经通过manage_pages权限授权我们的应用程序的人员都会发生。 – Lisa