有谁知道为什么我收到以下错误消息?我开始学习Facebook开发的世界,我找不到简单的答案。
代码:
$twitterUrl ="http://query.yahooapis.com/v1/public/yql?q=";
$twitterUrl .= urlencode("select * from twitter.status where id='jzm'");
$twitterUrl .="&format=json";
$twitterFeed = file_get_contents($twitterUrl, true);
$twitterFeed = json_decode($twitterFeed);
print_r($twitterFeed);
收到错误:
stdClass Object ( [error] => stdClass Object ( [lang] => en-US [description] => No definition found for Table twitter.status ) )
答案 0 :(得分:3)
尝试在查询中添加&env=http://datatables.org/alltables.env
。
$twitterUrl ="http://query.yahooapis.com/v1/public/yql?q=";
$twitterUrl .= urlencode("SELECT * FROM twitter.status WHERE id='jzm'");
$twitterUrl .="&format=json";
$twitterUrl .="&env=http://datatables.org/alltables.env";
$twitterFeed = file_get_contents($twitterUrl, true);
$twitterFeed = json_decode($twitterFeed);
print_r($twitterFeed);
答案 1 :(得分:0)
问题是,您正在尝试加载默认情况下Yahoo API无法识别的开放表。
因此,您可以通过以下查询为查询添加前缀:
USE 'http://www.datatables.org/twitter/twitter.status.xml' AS twitter.status;
这将加载custom community table,因此您可以使用它。
一般语法是:
USE "http://myserver.com/mytables.xml" AS mytable;
SELECT * FROM mytable WHERE...