我只是测试了 face.com 人脸识别 api,我在 json 请求上取得了成功:
NSString *url = @"http://api.face.com/faces/detect.json?api_key=myapi&api_secret=mysecret&urls=http://userserve-ak.last.fm/serve/_/47363849/Christina+Aguilera+HQ+PNG.png";
// Create new SBJSON parser object
SBJsonParser *parser = [[SBJsonParser alloc] init];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];
// Perform request and get JSON back as a NSData object
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
// Get JSON as a NSString from NSData response
NSString *json_string = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
// parse the JSON response into an object
// Here we're using NSArray since we're parsing an array of JSON status objects
NSDictionary *obj = [parser objectWithString:json_string];
//
NSString *status = [obj objectForKey:@"status"];
//
NSLog(@"status: %@", status);
当我将 api 密钥、秘密和 WEB 上的图像作为 GET 参数传递时,此方法有效,例如:
http://api.face.com/faces/detect.json?api_key=4b4b4c6d54c37&api_secret= &urls= http://farm3.static.flickr.com/2566/3896283279_0209be7a67.jpg
现在,我想从我的应用程序上传原始图像数据......但这在网站上没有很好的记录:
http://developers.face.com/docs/api/faces-detect/
那里说:
代码:可选[无名称]照片的原始图像数据(当而不是url,上传图像时)
这就是问题:
如何将原始数据与 apikey 和 secret 一起作为 POST 传递?我知道它必须是 POST,但是如何?