我在我的应用程序中使用了Facebook的批量请求。在大多数情况下,它的效果非常好,但令我困惑的一件事是为什么他们的API有时会返回空值?如果我得到这个“空值”响应,我可以稍后再试,它会起作用。
以下是一个例子:
URL:
https://graph.facebook.com/?access_token={access_token}
请求正文(编码之前):
batch=[{"method":"GET","relative_url":"{page_id}?return_ssl_resources=1"},{"method":"GET","relative_url":"{page_id}?return_ssl_resources=1"},{"method":"GET","relative_url":"{page_id}?return_ssl_resources=1"},{"method":"GET","relative_url":"{page_id}?return_ssl_resources=1"}]
以下是Facebook有时会回归的内容:
[null,null,null,null]
如果我在一秒钟后提出相同的请求,我会得到正确的答复:
[{"code":200,"headers":[...headers here...],"body":{...body here...},{"code":200,"headers":[...headers here...],"body":{...body here...},{"code":200,"headers":[...headers here...],"body":{},{"code":200,"headers":[...headers here...],"body":{...body here...}}]
行为并不总是一致的。大多数时候我可以再试一次并得到适当的回应。偶尔我需要尝试2至3次。这个问题每天都会发生几十次,而且只要我记得就会发生这种情况。我在Facebook上检查了我的应用程序诊断程序,我的应用程序没有任何限制,没有API限制,Facebook甚至没有在“API错误”报告中列出这些。知道为什么会这样吗?
答案 0 :(得分:1)
这个问题似乎已经纠正了。我现在还没有看到这个错误出现几天。
错误报告在这里: http://developers.facebook.com/bugs/295201867209494?browse=search_4f42b29071ebc7f92807017