Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook graph api 朋友计数的FQL查询已停止工作,并出现错误_Facebook Graph Api_Facebook Javascript Sdk_Facebook Fql - Fatal编程技术网

Facebook graph api 朋友计数的FQL查询已停止工作,并出现错误

Facebook graph api 朋友计数的FQL查询已停止工作,并出现错误,facebook-graph-api,facebook-javascript-sdk,facebook-fql,Facebook Graph Api,Facebook Javascript Sdk,Facebook Fql,fql?q=从uid='id'所在的用户中选择朋友计数 我使用上面的fql查询来获取好友数。它已经为我工作了相当长的一段时间。[Javascript SDK] 但现在它给出了以下错误消息 {错误:{消息:604您的语句不可索引。其中 子句必须包含可索引列。此类列用 *在从链接的表中, 类型:OAutheException} 我试着复制这个查询并将其粘贴到GraphAPI浏览器工具中,它工作得非常好 我已经检查了的FQL引用,uid仍然是一个可索引列 我已经检查了博客上是否有破坏性的更改,但是没有

fql?q=从uid='id'所在的用户中选择朋友计数

我使用上面的fql查询来获取好友数。它已经为我工作了相当长的一段时间。[Javascript SDK]

但现在它给出了以下错误消息

{错误:{消息:604您的语句不可索引。其中 子句必须包含可索引列。此类列用 *在从链接的表中, 类型:OAutheException}

我试着复制这个查询并将其粘贴到GraphAPI浏览器工具中,它工作得非常好

我已经检查了的FQL引用,uid仍然是一个可索引列

我已经检查了博客上是否有破坏性的更改,但是没有提到关于fql的内容。
你知道为什么这不起作用了吗?还有其他方法可以让它工作吗?

您可能有一个错误的访问令牌,或者您的查询可能在数字用户ID值周围有引号

https://graph.facebook.com/fql?q=SELECT 来自用户的好友计数,其中uid=me

{ 数据:[ { 朋友数:NNNN } ] }

https://graph.facebook.com/fql?q=SELECT friend_count FROM user WHERE uid IN从friend WHERE uid1=me中选择uid2

{ 数据:[ { 朋友数:421 }, { 朋友数:219 }, { 朋友:59 }, { 朋友数:239 }, { 朋友人数:235 }, { 朋友数:986 },

编辑

根据您在下面共享的代码链接,下面是一种正确编码fql url的方法

var q = 'fql?q=' + escape('SELECT friend_count FROM user WHERE uid=100001516911824');
FB.api(q, Log.info.bind('fql callback'));

您可能有错误的访问令牌,或者您的查询可能在数字用户ID值周围有引号

https://graph.facebook.com/fql?q=SELECT 来自用户的好友计数,其中uid=me

{ 数据:[ { 朋友数:NNNN } ] }

https://graph.facebook.com/fql?q=SELECT friend_count FROM user WHERE uid IN从friend WHERE uid1=me中选择uid2

{ 数据:[ { 朋友数:421 }, { 朋友数:219 }, { 朋友:59 }, { 朋友数:239 }, { 朋友人数:235 }, { 朋友数:986 },

编辑

根据您在下面共享的代码链接,下面是一种正确编码fql url的方法

var q = 'fql?q=' + escape('SELECT friend_count FROM user WHERE uid=100001516911824');
FB.api(q, Log.info.bind('fql callback'));

谢谢你的回答。事实上,因为我使用的是javascript sdk,所以我没有显式地管理访问令牌。sdk不会自动管理访问令牌吗?总之,我会更深入地研究身份验证令牌。我已经使用getLoginStatus检查了身份验证令牌,响应给出了有效的身份验证令牌和状态这是说连接。我也没有使用引号:-实际上这段代码在几周前还可以工作。令人惊讶的是,使用Graph API Explorer仍然可以工作,想知道Javascript SDK有什么问题。只是为了确保我也尝试过为web服务器启用https,但仍然没有。最糟糕的情况是,我必须重写你在使用什么浏览器?Chrome、IE、Safari都内置了开发工具,Firefox也有FireBug插件,你可以监控你的网络流量,查看FB JS SDK发送的确切调用以及API的确切响应。也许你的答案就在那里。:哇!这是个好主意:-一个d我想我现在看到了问题,当我看到发送的请求时,它正在截断用户的=XXX.friend\u计数,其中uid&sdk=joey哇,我高兴得跳了起来!!:-我用fql替换了我的查询?q=从用户那里选择friend\u计数,其中uid%3DXXXX有效:-我尝试编码整个字符串,但出现了一些其他异常。因此do你认为FB的人需要对此进行调查吗?事实上,我已经向他们提出了一个错误,现在如果是他们的问题,我将只更新它,否则我将不得不关闭它。谢谢你的回答。事实上,由于我使用的是javascript sdk,我没有显式管理访问令牌。sdk不会自动管理访问令牌吗?无论如何,我将更深入地研究身份验证令牌。我已经使用getLoginStatus检查了身份验证令牌,响应给出了一个有效的身份验证令牌,并且状态为connected。我也没有使用引号:-实际上这段代码几周前还在工作。令人惊讶的是使用Graph API Explorer仍然有效,想知道Javascript SDK有什么问题。只是为了确保我也尝试过为web服务器启用https,但仍然没有。最糟糕的情况是,我必须重写代码才能得到响应。你使用的浏览器是什么?Chrome、IE、Safari都内置了开发工具,Firefox也有FireBug插件,你可以使用它r您的网络流量,以查看FB JS SDK发送的确切调用以及API的确切响应。也许您的答案就在那里。哇!这是个好主意:-我想我现在看到了问题所在,whe
n我看到正在发送的请求,它正在截断=XXX。朋友(u count FROM user WHERE uid&sdk=joey哇)我高兴得跳起来了!!:-我将查询替换为fql?q=从uid为%3DXXXX的用户处选择朋友计数,结果成功:-我尝试对整个字符串进行编码,但它给出了一些其他异常。那么你认为FB的人需要调查这件事吗?事实上,我已经提出了一个错误与他们,现在如果这是他们的问题,我只会更新它,否则我将不得不关闭它。这似乎是正确的方式使用FQL。真为我不知道而感到羞愧..这看起来是使用FQL的正确方法。为我不知道而感到羞耻。。