iOSのNSURLConnectionを使用してhttpフォームの投稿を作成します。 HTMLフォームに2つのフォームフィールドと1つのファイルアップロードオプションがあります。 NSURLConnection
を使って同じことをしているとき、私は応答を得ていません。フォームデータiOSのNSURLConnectionを使用したリクエスト
NSString *urlString = @"http://url/test.php";
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data"];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
NSMutableData *body = [NSMutableData data];
[body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"file\"; filename=\"myphoto.png\"rn"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:@"Content-Type: application/octet-streamrnrn"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:filedata];
[body appendData:[[NSString stringWithFormat:@"&s=YL4e6ouKirNDgCk0xV2HKixt&hw=141246514ytdjadh"] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:body];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
NSLog(@"RETURNED:%@",returnString);
しかし、私はASIHTTPRequestを使用して、次のコードを書くとき、それが働いていると私は応答を取得しています。
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://url/test.php"]];
[request setPostValue:@"YL4e6ouKirNDgCk0xV2HKixt&hw" forKey:@"ssf"];
[request setPostValue:@"141246514ytdjadh" forKey:@"sds"];
[request setData:filedata withFileName:@"myphoto.png" andContentType:@"image/jpeg" forKey:@"file"];
[request startSynchronous];
NSError *error = [request error];
if (!error) {
NSString *response = [request responseString];
NSLog(@"response:%@",response);
}
NSURLConnection
の部分に間違っていることを教えてもらえますか?
@dbrajkovicはあなたが私を提案することができ – NSCry