0

次のような状況で問題http Post requestがあります。

テキストと Img ここにコードを含む投稿リクエストを送信する必要があります。

NSMutableURLRequest *eventRequest = [NSMutableURLRequest requestWithURL:_urlRequest cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:500];
 NSString *boundary = @"---------------------------14737809831466499882746641449";

//Set header Http POST
[eventRequest setHTTPMethod:@"POST"];
[eventRequest setValue:[NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary]forHTTPHeaderField:@"Content-Type"];

NSMutableData *body = [NSMutableData data];
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"parameter1\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[self postParametre] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];


//Image upload
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Type: immage/jpg \r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"Content-Disposition: form-data; filename=\"immagine.jpg\""dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:data];
[body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

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

NSString* string = [[NSString alloc] initWithData:body encoding:NSUTF8StringEncoding];
NSLog(@"Stampa Dati inviati: %@", string);

// Http header Content-Lenght
[eventRequest setValue:[NSString stringWithFormat:@"%i",[data length]] forHTTPHeaderField:@"Content-Length"];

self.theConnection=[[NSURLConnection alloc] initWithRequest:eventRequest delegate:self];

if (self.theConnection) {
    self.receivedData = [[NSMutableData data] retain];
} else {
    // Inform the user that the connection failed.
    NSLog(@"Connection Problem");
}

本文の最初の部分でmultipart/form-data を"Content-Type"設定し、2 番目の部分でテキストを設定し、2 番目の部分で画像を設定したことがわかりますが、画像は正しくアップロードされましたが、「拡張子」はなく、最初の部分では送信するテキストを設定しましたが、明らかにテキストが設定されていないか、形式がサーバーに読み取られませんでした。

このメソッドは、 「key1=value1&key2=value2&key3=value3」の形式で[self postParametre]a を返します。NSMutableString

誰でも私を助けることができますか?

よろしく。

4

1 に答える 1