日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android http pos 请求和gson解析处理head头信息

發布時間:2024/10/12 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android http pos 请求和gson解析处理head头信息 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//這是我從基類里取出來的代碼,包括HTTP ?POST 延時操作,GSON解析,設置頭信息,取出頭信息,


// 公共post類

public String HttpClientPost(String path, String msgBody, int msgId,
Context ctx) throws Exception {

HttpClient httpClient = new DefaultHttpClient();

org.apache.http.params.HttpParams parms = httpClient.getParams();
// 設置超時
/*HttpConnectionParams.setConnectionTimeout(parms, 3500);// 設置網絡超時
HttpConnectionParams.setSoTimeout(parms, 3500);// 設置網絡超時
*/
?httpClient.getParams().setParameter(CoreConnectionPNames.
?CONNECTION_TIMEOUT, 5500);
?
?httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT,
?5500 );
?


HttpPost request = new HttpPost(path);


Log.e("e", "path=" + path + ", msgId=" + msgId + ", msgBody=" + msgBody
+ ", mDataVersion=" + HttpTools.getDataVersion()
+ ", mLoginToken=" + HttpTools.getLoginToken());


// 設置Http Body
List<NameValuePair> parameters = new ArrayList<NameValuePair>();
NameValuePair nvp = new BasicNameValuePair("MsgId", msgId + "");
NameValuePair nvp1 = new BasicNameValuePair("MsgBody", msgBody);
parameters.add(nvp);
parameters.add(nvp1);


UrlEncodedFormEntity entity = new UrlEncodedFormEntity(parameters,
"UTF-8");
request.setEntity(entity);


HttpTools.setContext(ctx);


// 設置Http hearder
request.setHeader(InterfaceCode.HDR_DATA_VERSION_STRING,
HttpTools.getDataVersion());
request.setHeader(InterfaceCode.HDR_LOGIN_TOKEN_STRING,
HttpTools.getLoginToken());


// 發Http Request
try {


HttpResponse response = httpClient.execute(request);


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


Log.e("e",
"statusCode = " + statusCode + ", Entity="
+ response.getEntity());

if (statusCode == HttpStatus.SC_OK) {

// 處理Http Header
saveHeaderInfo(response, ctx);

// 處理Http Body?
Log.i("i", responseJson + "" + "---");
if (responseJson != null) {
responseJson = responseJson.replaceAll("&quot;", "\"");
}

return responseJson;
} else {
Log.e("e", "error: statusCode = " + statusCode);
return null;
}
} /*catch (ClientProtocolException e) {
// TODO: handle exception
e.printStackTrace();
Log.e("e", "error: ClientProtocolException = ");
return ClientProtocolException;


} */catch (ConnectTimeoutException e) {
// TODO: handle exception
e.printStackTrace();
Log.e("e", "error: ConnectTimeoutException = ");
return ConnectTimeoutException;
}/*
* catch(SocketTimeoutException e) { // TODO: handle exception
* e.printStackTrace(); Log.e("e", "error:SocketTimeoutException= ");
* return SocketTimeoutException; }
*/catch (UnknownHostException e) {
// TODO: handle exception
e.printStackTrace();

/*
* String json = responseJson.toString(); Log.i("i", json); json =
* URLDecoder.decode(json, "UTF-8"); Log.i("i", json + "json"); Gson
* gson = new Gson(); // google提供的一個類 方便于獲取類型Class
*?
* User user = gson.fromJson(json, User.class); Log.i("i",
* "username" + user.getUserName()); Log.i("i", "userpwd" +
* user.getUserPassword());
*/

Log.e("e", "error:UnknownHostException = ");

return UnknownHostException;
}

總結

以上是生活随笔為你收集整理的android http pos 请求和gson解析处理head头信息的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。