2011-12-20 9 views
1
NSString *urlString1 = @"http://www.php.eminosoft.com/123singles/upload.php"; 

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[request setURL:[NSURL URLWithString:urlString1]]; 
[request setHTTPMethod:@"POST"]; 

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

NSMutableData *body = [NSMutableData data]; 
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];  
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"uploadedfile\"; filename=\"song.mp3\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 

[body appendData:[[NSString stringWithString:@"Content-Type:application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 

[body appendData:[NSString stringWithString:secondString]]; 

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

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


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

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


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

[request setHTTPBody:body]; 


NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; 
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding]; 

私は取得しています応答は次のように:iphoneアプリケーションでサーバーにオーディオファイルをアップロードするにはどうすればよいですか?

「ファイルが正常にアップロード」

が、問題は、ファイルの内容のサイズは、オーディオファイルを再生するためにサポートされていないバイトであるです。

私に助けてください、どのようにオーディオファイルをサーバーにアップロードしますか?

+1

問題は何ですか?あなたは問題が "ファイルの内容のサイズはバイトである"と言います。あなたはあなたの問題をもっと説明できますか? –

+1

"sendSynchronousRequest"を作成しないでください。 NSURLConnectionを使用して非同期要求に進む。問題を解決するはずです。 – samfisher

+0

mp3 NSDataのコンテンツはどこですか?これは、 '[body appendData:[NSString stringWithString:secondString]];'と書かれています。それは –

答えて

0

オーディオファイルのサイズが大きいため、FTPを使用してオーディオファイルを送信しようとすると、サーバーにアップロードするのに時間がかかります。 FTPはその期間を短縮します。希望が役立ちます。

+0

でなければなりませんあなたはFTP arでオーディオファイルをアップロードするためのコードを投稿してください他の有用なチュートリアルなど。 –

0

私はあなたが簡単にサーバー上のオーディオファイルをアップロードすることができますこの方法は、以下のようなオーディオファイルをアップロードする

NSURL *audiourl = [NSURL URLWithString:@"Your Url"]; 
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:audiourl]; 
NSData *postData = [NSData dataWithContentsOfURL:SoundPath]; 
//SoundPath is your audio url path of NSDocumentDirectory. 
[request addData:postData withFileName:@"myAudio.caf" andContentType:@"audio/caf" forKey:@"company_audio"]; 
[request setDelegate:self]; 
[request startSynchronous]; 

をASIHTTPRequestを使用しています。

+0

hardik私はあなたのサンプルコードをアップロードすることができますか私は自分のコードで問題があり、アップロード中にハングアップします。 – parag

+0

@Hardik Shah:サーバーにオーディオファイルを送信するには、これらのコード行で十分です。私はこのコードを試したが、うまくいかなかったためです。上記のコードに他に何かを追加する必要がありますか? –

関連する問題