2010-11-24 3 views
1

Cocoa内からファイルを送信することはできますか?つまり、HTMLのアップロードフィールドで選択したように、クライアント側にファイルをアップロードしてサーバーにアップロードしたいということです。次に、サーバーがテキストフィールドに送信した応答を表示する必要があります。Cocoa POSTファイルリクエスト

これはまったく可能ですか?あれば、進捗バーに進行状況を表示できますか?私は通常のPOSTリクエストを送信するコードを持っていますが、サーバー側のPHPスクリプトに効果的にファイルを送信する方法はわかりません。

ありがとうございました!

答えて

3

あなたは、このようなファイルの内容を提出することができます:あなたのPHPスクリプトによって提供さ

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://"]]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:@"text/xml" forHTTPHeaderField:@"Content-type"]; 

NSString *xmlString = [NSString stringWithFormat:@"%@"]; 

[request setValue:[NSString stringWithFormat:@"%d", [xmlString length]] 
forHTTPHeaderField:@"Content-length"]; 

[request setHTTPBody:[xmlString dataUsingEncoding:NSUTF8StringEncoding]]; 

NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 

レスポンス詳細はNSURLConnectionマニュアルを参照して、すべてが実装されなければならない(代表者によって取得することができ、そこにあります例:

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse*)response 
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data 
- (void)connectionDidFinishLoading:(NSURLConnection *)connection 
+0

これはテキストファイルのみで動作するようです... ZIPアーカイブのようなファイルはどうですか? –

+0

setHTTPBodyはNSDataオブジェクトを受け入れます。http://stackoverflow.com/questions/3891149/convert-zip-file-into-nsdataを参照してください。 –

関連する問題