0

RESTful Web サービスを介してサーバーからデータを取得する必要があるプロジェクトに取り組んでいます。

サーバー側の人々は、いくつかの Web サービスを実装しています。これらのメソッドを使用する必要がありますが、"Get" と "POST" のどちらの http メソッドを使用すればよいかわかりません。

http メソッドとして「GET」を使用し、サーバー Web サービスが「POST」で実装されている場合、404 または同様の http エラー コードが表示されます。

Web サーバー API に実装されている http メソッドの種類を調べる方法はありますか?

現在、BOOL フラグを使用して、使用する Http メソッドを決定しています。フラグは外部から設定されています。

NSMutableURLRequest *urlRequest = nil;

if (_usePostMethod)
{
    urlRequest = [[NSMutableURLRequest alloc] initWithURL:self.serverURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30.0f];;
    [urlRequest setHTTPMethod:@"POST"];
    [urlRequest setHTTPBody:[restMessage.message dataUsingEncoding:NSUTF8StringEncoding]];
}
else
{
    urlRequest = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@/%@", self.serverURL, restMessage.message]]
                                              cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30.0f];
    [urlRequest setHTTPMethod:@"GET"];
}

BOOL _usePostMethodこの変数を取り除きたかったのです。

4

2 に答える 2

0

このGETメソッドは、Request-URI によって識別される情報 (エンティティの形式) を取得することを意味します。Request-URI がデータ生成プロセスを参照する場合、そのテキストがたまたまプロセスの出力でない限り、プロセスのソース テキストではなく、応答のエンティティとして返されるのは生成されたデータです。

このPOSTメソッドは、オリジン サーバーが、リクエストに含まれるエンティティを、Request-Line の Request-URI で識別されるリソースの新しい従属として受け入れるように要求するために使用されます。POST は、統一されたメソッドで次の機能をカバーできるように設計されています。

  - Annotation of existing resources;
  - Posting a message to a bulletin board, newsgroup, mailing list,
    or similar group of articles;
  - Providing a block of data, such as the result of submitting a
    form, to a data-handling process;
  - Extending a database through an append operation.
于 2013-06-24T06:06:43.900 に答える