过去,请求的响应给了我们一个请求ID数组(如此处所述http://developers.facebook.com/docs/reference/dialogs/requests/)但现在似乎响应变量返回两个项目,分别为'to'和'request'。以逗号分隔的用户ID字符串和请求为请求ID。它是否正确?我在任何地方都没有看到这个,但这是我目前看到的行为。
更新 这是我的电话的超简化版本:
FB.ui({method: 'apprequests', message: 'My Great Request'}, requestCallback);
function requestCallback(response) {
for(var key in response){
console.log(key);
console.log(response[key]);
}
}
当我向一个人发出请求时,变量响应有两个键:request和to。请求是请求ID,是我发送请求的人的ID。但是,如果我使用提供的请求ID调用图api,我发现'to'和'from'下的用户都等于发件人的名字和fbid。
或者,如果我向多个人请求请求等于单个请求id,则是包含发送给他们的请求的用户的所有fbids的数组。但是,当我调用图形api时,我再次发现'to'和'from'都包含请求用户的用户ID和名称。
答案 0 :(得分:0)
与documentation一样,新回调会收到object
(response
),其中包含array
(request_ids
}个请求ID:< / p>
{
"request_ids": [
0: [request_id]
1: [request_id]
...
]
}
所以我想你可以使用这个修改过的代码循环:
function requestCallback(response) {
for( var k in response.request_ids ) {
console.log(k);
console.log(response.request_ids[k]);
}
}
答案 1 :(得分:0)
此处已提交错误 http://developers.facebook.com/bugs/129565473812085
目前还没有明确的信息是否真的发生了变化或是一个错误。
答案 2 :(得分:0)
昨天我遇到了类似的问题。不得不修复我的代码。但是今天request_ids又回到了回复中。所以我再次更新了代码。但这次要使用这两种类型的对象。
我在这里找到了文档(转到“性能改进”部分) http://developers.facebook.com/blog/post/569/
但它仍然没有解释为什么他们今天恢复了这一变化。或者是昨天意外发布的。