2013-09-30 134 views
0

我现在很沮丧。我花了很多时间试图调试我的应用程序,以发现Facebook的官方PHP SDK已过时,并且看起来不再维护它:https://github.com/facebook/facebook-php-sdk为什么Facebook PHP SDK已过时?什么是替代方案?

因为返回错误而向Facebook提交了一个bug后由API,Facebook的员工的一个回应如下:

,你需要使用图形API这样的API调用旧的REST API不支持使用网页的访问令牌的 - 如果你正在使用SDK,请确保它将您的FQL查询路由到https://graph.facebook.com/fql?q=X而不是https://api.facebook.com/method/fql.query

但是在PHP SDK称Facebook提供它使用以下请求:

URL: https://api-read.facebook.com/restserver.php 
GET: method=fql.query&return_ssl_resources=1&query=SELECT+comment_info.comment_count%2C+created_time%2C+like_info.like_count%2C+permalink%2C+post_id%2C%0A+share_info.share_count%2C+type%2C+attachment.media%0A+FROM+stream%0A+WHERE+actor_id%3Dxxxxxx%0A+AND+source_id%3Dxxxxxx%0A+ORDER+BY+created_time+DESC%0A+LIMIT+100&callback=&api_key=xxxxxxxxx&format=json-strings&access_token=xxxxx 

任何人碰到了这个问题?您使用的是什么SDK?

+0

该消息已经告诉您,您可以使用语法'fql?q = {query}'轻松地使用SDK进行FQL查询,那么您的实际问题是什么? – CBroe

+0

这就是我最终做的。然而,所有的文件,例子等都是指错误的方式来做到这一点。无处可见我有人使用'fb :: api('/ fql',$ params)'语法。我猜如果我不遵循官方的Facebook PHP SDK文档,我没有问题。 – maxwell2022

回答

2

的PHP SDK在Github上仍然保持了和官方来源(见https://developers.facebook.com/docs/reference/php/

然而,旧的API(如REST API)仍然支持向后兼容性问题。但对于新的东西,你需要使用Graph API。如果你阅读文档,很清楚的是Graph API是要走的路(文档中没有提及REST API)。 https://developers.facebook.com/docs/reference/php/facebook-api/

所以,我认为这里的问题是你开始阅读一些旧的博客文章,而不阅读官方的API文档。老实说,在Facebook的东西,只相信你可以在官方文档和StackOverflow中找到很好的投票评级。太多糟糕的开发人员一直在试图将SEO引入他们的网站,撰写有关开发Facebook应用程序的低劣文章。

+0

谢谢西蒙。这不是老博客的东西,这是来自实际的文档,即。 'FQL Queries',它们提供的示例指定'fql.query'方法,这将通过'restserver.php'调用进行转换。这是工作时间,但不推荐Facebook的。如果你将'URL'和'postData'转储到'makeRequest()'中,你会自己看到。 – maxwell2022

+0

你有一个链接到文档页面? FQL通常也可以在Graph API的顶部工作,所以我对你所说的有点惊讶。 –

+0

您提供的相同链接:https://developers.facebook.com/docs/reference/php/facebook-api/文档末尾的示例。 – maxwell2022

相关问题