@sleepyが提供する答えは良い方法である、またはあなたがカテゴリでこれを実現するための構文を好む場合などthis linkを参照してください。
これは、URLパラメータを使用してサーバーに送信する文字の場合にのみ行う必要があることに注意してください。リクエストのHTTP本体にXMLコンテンツを配置して実際にサービスにXMLデータをPOSTしている場合、この種のエンコーディングは必要ありません。転記されるXMLのサイズやサービスでサポートされるインターフェイスの種類によっては、HTTPの本文を使用する方が良い場合もあります。 requestXML
は私が投稿したいとserviceURL
がためNSURLであるXMLを含むNSStringのである
NSData *requestData = [requestXml dataUsingEncoding:NSUTF8StringEncoding];
NSString *requestLength = [NSString stringWithFormat:@"%d", [requestXml length]];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:serviceURL];
[request setHTTPMethod:@"POST"];
[request setValue:@"text/xml" forHTTPHeaderField:@"Content-Type"];
[request setValue:requestLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:requestData];
:
HTTPボディでこれを行う方法の一例として、私は通常、このようなものを使用しますサービスURL。この場合、XMLコンテンツにUTFエンコーディングを使用しています。これは、特定の理由がない限り、おそらくすべての場合に使用する必要があります。
こんにちは@ティムディーン、あなたの答えに感謝します。はい、これをHTTPの本文に投稿していますが、このメカニズムで送信する場合、どのようなエンコーディングが必要ですか? – bennythemink
あなたのサービスで別途必要な理由がない限り、NSUTF8StringEncodingを使用します。私のポストを、私がこれをどうやって行うのかの例で更新しました。 –
多くのありがとうTim! – bennythemink