有人对此有任何要求吗?我不太明白,现在我正在发送 75 个单独的 HTTP 请求,这看起来并不聪明,而且我遇到了这么大的多重查询的问题。
(虽然,对于批量请求,我担心超时的可能性更大,因为它发回的结果更大,可能会在 3G 上丢失)。
有没有人能够在objective-c中编写批处理请求,或者您对非常大的查询有其他建议吗?我知道附加代码的正确形式,但我什至不知道从哪里开始。
有人对此有任何要求吗?我不太明白,现在我正在发送 75 个单独的 HTTP 请求,这看起来并不聪明,而且我遇到了这么大的多重查询的问题。
(虽然,对于批量请求,我担心超时的可能性更大,因为它发回的结果更大,可能会在 3G 上丢失)。
有没有人能够在objective-c中编写批处理请求,或者您对非常大的查询有其他建议吗?我知道附加代码的正确形式,但我什至不知道从哪里开始。
如文档中所述,有一个使用 Graph API 执行批处理请求的选项:
curl \
-F 'access_token=…' \
-F 'batch=[ \
{"method": "GET", "relative_url": "me"}, \
{"method": "GET", "relative_url": "me/friends?limit=50"} \
]'\
https://graph.facebook.com
请注意,单个批处理请求的当前限制为 50 次操作。
Facebook iOS SDK 上的实现看起来有点像这样(facebook
你的 Facebook 实例在哪里):
NSString *req01 = @"{ \"method\": \"GET\", \"relative_url\": \"me\" }";
NSString *req02 = @"{ \"method\": \"GET\", \"relative_url\": \"me/friends?limit=50\" }";
NSString *allRequests = [NSString stringWithFormat:@"[ %@, %@ ]", req01, req02];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObject:allRequests forKey:@"batch"];
[facebook requestWithGraphPath:@"me" andParams:params andHttpMethod:@"POST" andDelegate:self];