Android httpreponse(urlencoded string)获取属性

时间:2012-03-07 17:07:49

标签: android httpresponse

因此,使用OAuth API我需要检索access_token属性。发送登录信息工作正常,我得到了适当的回复。响应的格式如下:

access_token=SOMETOKEN&login=SOMELOGIN&apiKey=SOMEAPIKEY

目前我正在收到回复:

org.apache.http.HttpResponse response = httpclient.execute(httppost);
String content = convertStreamToString(response.getEntity().getContent());

第二行获取内容的String,如上所述。那么回来的是一个URL编码字符串,我需要得到它的access_token值。但是我不知道该怎么做,我似乎无法找到一个方法或任何事情来做这个,我是否需要解析它还是有其他方法来做它?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

尝试URLDecoder.decode(content)

如果那是唯一的问题,那应该有用。

编辑:我猜你已经知道了这一点,你正在寻找更自动的东西,但以防万一。我没有测试过它。

String[] splitted = content.split("&");

//detect token
String token;
for(int i=0;i<splitted.length;i++){
if(splitted[i].startsWith("token"){
 String[] tokenSplitted = splitted[i].split("=");
token = tokenSplitted[1];
}
}

答案 1 :(得分:0)

我实际上刚刚找到了一个位于Twitter Api Me(http://kenai.com/projects/twitterapime/pages/Home)StringUtil类的解决方案,我不会在这里粘贴它,但它的开放性所以如果有人需要它,那就从那里开始吧。