を探しているあなたはNSMutableURLRequestでNSURLConnectionを使用したい、このようなものかもしれません:
NSMutableURLRequest *theRequest=[[NSMutableURLRequest alloc] init];
[theRequest addValue:@"attachment;filename=\"file2.gif\"" forHTTPHeaderField:@"Content-disposition"];
[theRequest addValue:@"image/gif" forHTTPHeaderField:@"Content-Type"];
[theRequest addValue:@"binary" forHTTPHeaderField:@"Content-Transfer-Encoding"];
[theRequest setHttpBody:myBodyNSDataObject];
// create the connection with the request
// and start loading the data
NSURLConnection *theConnection=[[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
if (theConnection) {
// Create the NSMutableData that will hold
// the received data
// receivedData is declared as a method instance elsewhere
receivedData=[[NSMutableData data] retain];
} else {
// inform the user that the download could not be made
}
あなたはNSMutableURLRequestメソッドを使用して、ヘッダーを変更したり、設定することができます。
- (void)addValue:(NSString *)value forHTTPHeaderField:(NSString *)field
応答は、サーバーが戻ってくるものであればどんなものでもかまいません。残りのデリゲートメソッドを実装してレスポンスの本文を返すために、Apple's documentationをチェックアウトすることができます。 NSDataオブジェクトは、アップロードするファイルの内容を表す必要があります。 FTPを使用して同じことを行うのはもう少し複雑ですが、これはファイルのボディをポストするために働きます。
[theRequest addValue:@"attachment;filename=\"file2.gif\"" forHTTPHeaderField:@"Content-disposition"];
[theRequest addValue:@"image/gif" forHTTPHeaderField:@"Content-Type"];
[theRequest addValue:@"binary" forHTTPHeaderField:@"Content-Transfer-Encoding"];
そして、あなたは体を追加する必要があります:あなたはNSDataオブジェクトは、あなたのようなヘッダを設定するように、HTTPポストのボディのように設定されていることを確認したくなるでしょう。サーバー側では、ファイル名とファイルを構成するバイト数を取得できます。
これは正確に使用するコードではありませんが、どのように進めるべきかを知っておく必要があります。