Tuesday, September 24, 2013

IPHONE upload pictures total error!

NSString * lat_long = [NSStringstringWithFormat: @ "{\" latitude \ ": \"% f \ ", \" longitude \ ": \"% f \ "}", lattitude, longitude];
NSString * urlString = @ "http://pluginwebtest.shopal.jp/api/v1/upload1/add_upload_shop.php";

NSMutableURLRequest * request = [[[NSMutableURLRequestalloc] init] autorelease];
[Request setURL: [NSURL URLWithString: urlString]];
[Request setHTTPMethod: @ "POST"];

NSString * boundary = @ "0xKhTmLbOuNdArY";
NSString * contentType = [NSStringstringWithFormat: @ "multipart / form-data; boundary =% @", boundary];
[Request addValue: contentType forHTTPHeaderField: @ "Content-Type"];

NSMutableData * postbody = [NSMutableDatadata];
NSMutableString * str = [[NSMutableStringalloc] init];
/ / First field
[Str appendFormat: @ "\ r \ n \ r \ n -% @ \ r \ n", boundary];
[Str appendFormat: @ "Content-Disposition: form-data; name = \" product_desc \ "\ r \ n \ r \ n"];
if (product_desc)
{
[Str appendFormat: product_desc];
}
else
{
[Str appendFormat: @ "null"];
}
/ / Second field
[Str appendFormat: @ "\ r \ n \ r \ n -% @ \ r \ n", boundary];
[Str appendFormat: @ "Content-Disposition: form-data; name = \" product_category \ "\ r \ n \ r \ n"];
if (product_category)
{
[Str appendFormat: product_category];
}
else
{
[Str appendFormat: @ "null"];
}
/ / The third field
[Str appendFormat: @ "\ r \ n \ r \ n -% @ \ r \ n", boundary];
[Str appendFormat: @ "Content-Disposition: form-data; name = \" lat_long \ "\ r \ n \ r \ n"];
[Str appendFormat: lat_long];
/ / The fourth field
NSString * image_data = [data base64Encoded];
[Str appendFormat: @ "\ r \ n \ r \ n -% @ \ r \ n", boundary];
[Str appendFormat: @ "Content-Disposition: form-data; name = \" image \ "\ r \ n \ r \ n"];
[Str appendFormat: image_data];
/ / Encoding
[Postbody appendData: [str dataUsingEncoding: NSUTF8StringEncoding]];
[Request setHTTPBody: postbody];
[Str release];

NSData * returnData = [NSURLConnectionsendSynchronousRequest: request returningResponse: nilerror: nil];
NSString * returnString = [[NSStringalloc] initWithData: returnData encoding: NSUTF8StringEncoding];
NSLog (@ "returnString is% @", returnString);
[ReturnString release];


Server always returns could not parse multipart servlet request!

Well in the end is the reason ah!
When I try using HTML forms-POST jump test to the target page, you will not complain!
Server using spring roo

Reply:
There are fields of the same name. Server can not resolve.
Reply:
Problems have been solved, the problem is the dividing line, but still would like to thank the landlord!

No comments:

Post a Comment