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

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

    } 
    ..... 

我有不同的状态,我需要处理所有这些以便稍后显示适当的状态适当的对话框消息。处理HTTP响应状态的更好方法是什么?

处理HTTP响应状态的更好方法是什么?

回答

2

另一种方法是如下:

  1. 把这些状态代码和相应的信息在属性文件。 您可以为状态201

  2. 这样做 staus_201 =消息当您收到一个状态,检索的属性文件(see example)对应的消息并显示出来。

  3. 优势这是:对于任何新的状态,你不必做任何代码更改。只需在属性文件中添加新条目,就可以了。
2

可以使用switch case

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

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

    so on... 

    default : //do something else; 
} 
1

首先,我会建议使用symbolic names,而不是“魔值”这样的事情:

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

在这种情况下,它真的,如果你使用if或开关不区分大小写.. 。但最重要的是,通过使用符号名称,代码将更具可读性。 (我不确定你使用的是哪个库...我假定每个库都会有这样的常量,比如this。)。