Web services ASIFormDataRequest post类型

Web services ASIFormDataRequest post类型,web-services,ios5,asiformdatarequest,Web Services,Ios5,Asiformdatarequest,我需要发送带有post类型的RestFul Web服务请求,post数据格式如下{“请求”:“参数”…}和具有相同请求的二进制数据。是否可以使用ios?如果可能,请说明?我不建议再使用ASIHttpRequest库,因为它不会从开发人员那里获得任何更新,关于如何创建post http请求,这里有一个示例 NSString *url = @"your webservice base url"; NSMutableURLRequest *request = [[NSMutableURLRequest

我需要发送带有post类型的RestFul Web服务请求,post数据格式如下{“请求”:“参数”…}和具有相同请求的二进制数据。是否可以使用ios?如果可能,请说明?

我不建议再使用ASIHttpRequest库,因为它不会从开发人员那里获得任何更新,关于如何创建post http请求,这里有一个示例

NSString *url = @"your webservice base url";
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:url]];

[request setHTTPMethod:@"POST"];

NSString *param2 = ...//
NSData *binaryData = .... //initilize the binary data you want to send
NSString *bodyString = [NSString stringWithFormat:@"param1=%@&param2=%@",binartData,param2];



[request setValue:[NSString stringWithFormat:@"%d", [bodyString length]] forHTTPHeaderField:@"Content-length"];
[request setHTTPBody:[bodyString dataUsingEncoding:NSASCIIStringEncoding]];//or set the type of encoding agreed with your webservice

NSURLResponse *response = nil;
NSError *error = nil;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

NSString *responseString;
if ( responseData && !error){
    responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

}

谢谢…但我需要将json数据作为参数{“parameters”=…}发送给serverjson对象,图像的二进制数据只是字符串。。您可以将JSON数据保存在NSString对象中,并将其作为一个参数发送。