Невозможно загрузить 2 изображения в одном запросе NSURL в методе POST

Мы отправляем правильный запрос в API, разделяя оба изображения. Так что есть проблема, что оба изображения не загружаются, только одно изображение загружается на сервер. Я проверил имя параметра, которое также предоставлено командой API, вот оно:

#define IMAGE_DP @"Content-Disposition: form-data; name=\"profileimage\"; filename=\"image.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n"
#define IMAGE_COVER @"Content-Disposition: form-data; name=\"coverimage\"; filename=\"image.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n"

Построение запроса на загрузку двух изображений в одном запросе NSURLMutable

 if ([isprofilepicupdated isEqualToString:@"1"]) {


[postBody appendData:[IMAGE_DP dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[NSData dataWithData:profileimage]];
[postBody appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];
}
if ([iscoverpicupdated isEqualToString:@"1"]) {
[postBody appendData:[IMAGE_COVER dataUsingEncoding:NSUTF8StringEncoding]];
[postBody appendData:[NSData dataWithData:coverimage]];
[postBody appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];
}

Итак, как мы можем добавить два изображения в одно тело запроса NSURLMutable?

-1

Решение

 NSString *urlString = @"<PostImage-url>";
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];

NSMutableData *body = [NSMutableData data];

NSString *boundary = @"---------------------------14737809831466499882746641449";
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request addValue:contentType forHTTPHeaderField:@"Content-Type"];


// file
for (int i=0;i<(YOUR _ARRAY).count;i++)
{
UIImage * myimg=[YOUR _ARRAY objectAtIndex:i];
NSData *ImageData = UIImagePNGRepresentation(myimg);

[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Disposition: attachment; name=\"img1[]\"; filename=\".jpg\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[NSData dataWithData:ImageData]];
[body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];


}

[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"vin\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];

// close form
[body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
// set request body
[request setHTTPBody:body];

//ASynchronous request

[[NSURLConnection alloc] initWithRequest:request delegate:self];
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]