我想像下面这样做,但它不起作用。
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"first_name,picture?type=normal", @"fields",nil];
[facebook requestWithGraphPath:@"me" andParams:params andDelegate:self];
我正在使用的facebook-ios-sdk是here
如果我想在一个请求中要求它们,该怎么做?谢谢。
我使用了批量请求,如
NSString *jsonRequest1 = @"{ \"method\": \"GET\", \"relative_url\": \"me?fields=first_name\" }";
NSString *jsonRequest2 = @"{ \"method\": \"GET\", \"relative_url\": \"me/picture?type=square\" }";
NSString *jsonRequestsArray = [NSString stringWithFormat:@"[ %@, %@ ]", jsonRequest1, jsonRequest2];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObject:jsonRequestsArray forKey:@"batch"];
[facebookDelegate requestWithGraphPath:@"me" andParams:params andHttpMethod:@"POST" andDelegate:self];
我得到的结果是
({
body = "{\"first_name\":\"Eric\",\"id\":\"100003742445201\"}";
code = 200;
headers = (
{
name = "Access-Control-Allow-Origin";
value = "*";
},
{
name = "Cache-Control";
value = "private, no-cache, no-store, must-revalidate";
},
{
name = Connection;
value = close;
},
{
name = "Content-Type";
value = "text/javascript; charset=UTF-8";
},
{
name = ETag;
value = "\"3be1c3dfc20761062712ae899cc7c402062300a7\"";
},
{
name = Expires;
value = "Sat, 01 Jan 2000 00:00:00 GMT";
},
{
name = Pragma;
value = "no-cache";
}
);},
{
body = "<null>";
code = 302;
headers = (
{
name = "Access-Control-Allow-Origin";
value = "*";
},
{
name = "Cache-Control";
value = "private, no-cache, no-store, must-revalidate";
},
{
name = Connection;
value = close;
},
{
name = "Content-Type";
value = "image/jpeg";
},
{
name = Expires;
value = "Sat, 01 Jan 2000 00:00:00 GMT";
},
{
name = Location;
value = "http://profile.ak.fbcdn.net/hprofile-ak-snc4/573359_100003742445201_1494953237_q.jpg";
},
{
name = Pragma;
value = "no-cache";
}
);
}
)
个人资料图片位置不正确。为什么呢?
答案 0 :(得分:0)
以下是使用ios-sdk的样本批次
请参阅https://stackoverflow.com/a/5503010/912623以获取完整示例。
-(void) prepareMyBatchRequest {
NSString *jsonRequest1 = @"{ \"method\": \"GET\", \"relative_url\": \"me?fields=first_name,picture\" }";
NSString *jsonRequest2 = @"{ \"method\": \"GET\", \"relative_url\": \"me\" }";
NSString *jsonRequestsArray = [NSString stringWithFormat:@"[ %@, %@ ]", jsonRequest1, jsonRequest2];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObject:jsonRequestsArray forKey:@"batch"];
[facebook requestWithGraphPath:@"me" andParams:params andHttpMethod:@"POST" andDelegate:self];
}