欢迎访问 生活随笔!

生活随笔

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

编程问答

android 如何用httpclient发请求和利用httphead头信息给服务器

发布时间:2024/10/12 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 android 如何用httpclient发请求和利用httphead头信息给服务器 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
// 公共post类
public String HttpClientPost(String path, String str,String port, Context ctx)
throws Exception {
HttpClient httpClient = new DefaultHttpClient();

HttpPost request = new HttpPost(path);

// 设置请求实体

//得到键值对进行保存数

List<NameValuePair> parameters = new ArrayList<NameValuePair>();据
NameValuePair nvp = new BasicNameValuePair("MsgId", port);
NameValuePair nvp1 = new BasicNameValuePair("MsgBody", str);
parameters.add(nvp);
parameters.add(nvp1);
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(parameters,
"UTF-8");
request.setEntity(entity);

//设置http头信息
request.setHeader("Version", mDataVersion);
request.setHeader("Token", mLoginToken);
int statusCode = 0;
HttpResponse response = httpClient.execute(request);
statusCode = response.getStatusLine().getStatusCode();
if (statusCode == HttpStatus.SC_OK) {

responseJson = EntityUtils.toString(response.getEntity());

Header[] head = response.getAllHeaders();
Header h = response.getLastHeader("SyncFlag");
Header headers[] = response.getAllHeaders();

int i = 0;
String st = "";
Httphead hp = new Httphead();
while (i < headers.length) {
SharedPreferences remdpassword = ctx.getSharedPreferences(
"httphead", Activity.MODE_PRIVATE);

SharedPreferences.Editor edit = remdpassword.edit();

SharedPreferences remdname = ctx.getSharedPreferences(
"UserInfomation", Activity.MODE_PRIVATE);
final int muserId = remdname.getInt("muserId", 0);
Gson gs = new Gson();

if (headers[i].getName().equalsIgnoreCase("ErrorCode")) {
hp.setSyncFlag(headers[i].getValue());
edit.putString("ErrorCode", headers[i].getValue());
Log.i("i", "ErrorCode" + headers[i].getValue());

}

if (headers[i].getName().equalsIgnoreCase("Version")) {
Log.i("i", "DataVersion" + headers[i].getValue());
if (responseJson != null) {
try {
dv = new DBMgeVersion(ctx);
Versioninfo vi = new Versioninfo();
vi.setUserid(muserId);
vi.setVersion(headers[i].getValue());
int num = dv.updateVersion(vi);
if (num == 0) {
dv.addVersion(vi);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}

}
edit.commit();
i++;

}
if (responseJson != null) {
responseJson = responseJson.replaceAll("&quot;", "\"");
}

return responseJson;
}
return null;
} 与50位技术专家面对面20年技术见证,附赠技术全景图

总结

以上是生活随笔为你收集整理的android 如何用httpclient发请求和利用httphead头信息给服务器的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。