突然间,FQL查询不起作用,我有这么多个月的代码并保持运行,现在它不起作用,甚至我以前的项目都有这个代码出错。
例如, 我有一个名为示例页面一的粉丝页面名称,其ID为 540109632726307
所以,我想要的是,使用粉丝页面ID检索粉丝页面的名称。
的查询 的
https://graph.facebook.com/fql?q=SELECT+name+FROM+page+WHERE+page_id=540109632726307
的代码 的
$fbp_id = 540109632726307; //Sample FB ID
$fql_query_url = 'https://graph.facebook.com/'.'fql?q=SELECT+name+FROM+page+WHERE+page_id= '.$fbp_id.'';
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_obj = json_decode($fql_query_result, true);
var_dump($json_output);
当我运行代码时,它会导致 NULL ,它不像以前那样。 facebook更新了fql查询的东西吗?我似乎也无法找到有关它的任何消息。
但是,当我将此链接运行到浏览器时,
https://graph.facebook.com/fql?q=SELECT+name+FROM+page+WHERE+page_id=540109632726307
它显示我所做的fql查询的结果
{
"data": [
{
"name": "Sample Page One"
}
]
}
这是一个有效的网址。我的代码有问题吗?
答案 0 :(得分:1)
三件事 -
将fb_id
定义为:
$fbp_id = "540109632726307"
(因为它是一个大整数)
在 =
之后不留空格:
page_id= '.$fbp_id
没有变量$json_output
,而是在$fql_query_obj
中使用var_dump
。
所以你的代码看起来像是:
$fbp_id = "540109632726307"; //Sample FB ID
$fql_query_url = 'https://graph.facebook.com/'.'fql?q=SELECT+name+FROM+page+WHERE+page_id='.$fbp_id.'';
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_obj = json_decode($fql_query_result, true);
var_dump($fql_query_obj);
试试这个。
答案 1 :(得分:0)
为什么在$ fql_query_url中连接两个字符串?它可能只是一个字符串。 您也不需要在最后连接单引号。
您是否尝试通过api.facebook.com网址获取文件?
e.g。
$fbp_id = "540109632726307"; //Sample FB ID
$fql_query_url = 'https://api.facebook.com/method/fql.query?query=SELECT+name+FROM+page+WHERE+page_id='.$fbp_id;
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_obj = json_decode($fql_query_result, true);
var_dump($fql_query_obj);
Facebook非常紧随其后。有时候事情可以使用graph.facebook.com,有时你需要使用api.facebook.com。