2012-01-09 10 views
0
HttpResponse response = mHttpClient.execute(mHttpGet); 

    if(response.getStatusLine().getStatusCode() == 201){ 

    } 
    ..... 

私はステータスが異なっていますが、後で適切なステータスメッセージが表示されるように、それらをすべて処理する必要があります。HTTP応答ステータスを処理するより良い方法は何ですか?

HTTP応答ステータスを処理するにはどうすればよいですか?

答えて

2

使用することができます。

  1. は、プロパティファイルでこれらの状態コードおよび対応するメッセージを入れてください。 あなたは、あなたがステータスを受信すると、ステータス201

  2. ため staus_201 =メッセージのような何かをプロパティファイル(see example)から対応するメッセージを取得し、それらを表示することができます。

  3. これは次のとおりです。新しいステータスの場合は、コードを変更する必要はありません。プロパティファイルに新しいエントリを追加するだけで良いです。私が代わりに「魔法の値」は、このようなもののsymbolic namesを使用することをお勧め
2

次のように別の方法があるswitch case

int status = response.getStatusLine().getStatusCode(); 

switch(status){ 
    case 201 : //do something ; 
      break; 

    so on... 

    default : //do something else; 
} 
1

まず:この場合

int status = response.getStatusLine().getStatusCode(); 
if (status == HttpServletResponseCode.SC_CREATED) { 
    ... 
} 

あなたがあれば使用したり、スイッチケースならば、それは本当に問題ではないです..しかし、最も重要なのは、記号名を使ってコードを読みやすくすることです。 (私はどのライブラリを使用しているかわかりません...すべてのライブラリはthisのような定数のような種類があると仮定します。)。

関連する問題