标签:
android的HttpClient实现简单的get和post请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
/** *
Http工具类 */ public
class
HttpUtil { //
创建HttpClient对象 public
static
HttpClient httpClient = new
DefaultHttpClient(); public
static
final
String BASE_URL = "" ; /** *
get请求 *
*
@param url *
发送请求的URL *
@return 服务器响应字符串 *
@throws Exception */ public
static
String doGet(String url) throws
Exception { //
创建HttpGet对象。 HttpGet
get = new
HttpGet(url); //
发送GET请求 HttpResponse
httpResponse = httpClient.execute(get); //
如果服务器成功地返回响应 if
(httpResponse.getStatusLine().getStatusCode() == 200 )
{ //
获取服务器响应字符串 HttpEntity
entity = httpResponse.getEntity(); InputStream
content = entity.getContent(); return
convertStreamToString(content); } return
null ; } /** *
post请求 *
*
@param url *
发送请求的URL *
@param params *
请求参数 *
@return 服务器响应字符串 *
@throws Exception */ public
static
String doPost(String url, Map<String, String> rawParams) throws
Exception { //
创建HttpPost对象。 HttpPost
post = new
HttpPost(url); //
如果传递参数个数比较多的话可以对传递的参数进行封装 List<NameValuePair>
params = new
ArrayList<NameValuePair>(); for
(String key : rawParams.keySet()) { //
封装请求参数 params.add( new
BasicNameValuePair(key, rawParams.get(key))); } //
设置请求参数 post.setEntity( new
UrlEncodedFormEntity(params, "utf-8" )); //
发送POST请求 HttpResponse
httpResponse = httpClient.execute(post); //
如果服务器成功地返回响应 if
(httpResponse.getStatusLine().getStatusCode() == 200 )
{ //
获取服务器响应字符串 HttpEntity
entity = httpResponse.getEntity(); InputStream
content = entity.getContent(); return
convertStreamToString(content); } return
null ; } /** *
获取服务器的响应,转换为字符串 */ private
static
String convertStreamToString(InputStream is) { BufferedReader
reader = new
BufferedReader( new
InputStreamReader(is)); StringBuilder
sb = new
StringBuilder(); String
line = null ; try
{ while
((line = reader.readLine()) != null )
{ sb.append(line); } }
catch
(IOException e) { e.printStackTrace(); }
finally
{ try
{ is.close(); }
catch
(IOException e) { e.printStackTrace(); } } return
sb.toString(); } } |
标签:
原文地址:http://blog.csdn.net/u014311077/article/details/42650011