我使用HTTP PUT方法将base64编码的图像字符串传递给服务器端。我已经多次尝试但是收到错误消息作为响应。该错误消息是因为null值在服务器端获得。我已经检查了同样的,在Android代码和它的工作正常。我在下面附上我的代码。
SBJSON *parser = [[SBJSON alloc] init];
NSString *url=[NSString stringWithFormat:@"The URL i am using"] ;
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"XXXXX" forHTTPHeaderField:@"USER_AGENT"];
[request setHTTPMethod:@"PUT"];
NSString *input=[NSString stringWithFormat:@"abc[image]=%@",base64encodedString];
[request setHTTPBody:[input dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *json_string = [[NSString alloc] initWithData:response encoding:NSASCIIStringEncoding];
NSDictionary *statuses = [parser objectWithString:json_string error:nil];
[parser release];
[json_string release];
return statuses;
我从服务器端收到错误消息,如下所示:“'identify'命令无法识别xxxxxx.jpg。”
请提出解决方案。
最后我发现内容类型应该从“application / x-www-form-urlencoded”更改为“multipart / form-data”。任何人都可以告诉我如何使用这种方式传递Base编码的字符串?请...过去20天我支持这个问题......