文档章节

安卓请求网络Get和Post请求方式

绝版公子
 绝版公子
发布于 2014/04/13 10:12
字数 350
阅读 156
收藏 7

package com.jzlg.asyncexam;


import java.util.ArrayList;

import java.util.List;

import java.util.Map;

import java.util.Set;


import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.client.utils.URLEncodedUtils;

import org.apache.http.impl.client.DefaultHttpClient;

import org.apache.http.message.BasicNameValuePair;

import org.apache.http.util.EntityUtils;


public class InternetHelper {


// 发送请求

public String requestUrl(String url, Map<String, Object> map) {

// 抓换参数

try {

//转换参数

String params = cdtParams(map);

//创建请求客户端

HttpClient httpClient = new DefaultHttpClient();

//创建get请求

HttpGet doGet = new HttpGet(url + "?" + params);

//发送请求,并返回 response

HttpResponse response = httpClient.execute(doGet);

if (response != null) {

//获取并转换相应的结果

return EntityUtils.toString(response.getEntity());

}

} catch (Exception ex) {


ex.printStackTrace();

}

return null;

}


// 转换参数

private String cdtParams(Map<String, Object> map) {

// 处理参数

List<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();

Set<String> keys = map.keySet();

for (String key : keys) {

params.add(new BasicNameValuePair(key, map.get(key).toString()));

}

// 将参数转换

return URLEncodedUtils.format(params, "UTF-8");

}

}

//Post请求


package com.jzlg.inter;


import java.util.ArrayList;

import java.util.List;

import java.util.Map;

import java.util.Set;


import org.apache.http.HttpResponse;

import org.apache.http.client.HttpClient;

import org.apache.http.client.entity.UrlEncodedFormEntity;

import org.apache.http.client.methods.HttpPost;

import org.apache.http.client.utils.URLEncodedUtils;

import org.apache.http.impl.client.DefaultHttpClient;

import org.apache.http.impl.conn.DefaultClientConnection;

import org.apache.http.message.BasicNameValuePair;

import org.apache.http.util.EntityUtils;


public class internetHeper {

//发送请求如果发送的参数带有参数一般使用Post请求

public String request(String url,Map<String, Object> map)

{

try {

List<BasicNameValuePair> parem=this.Parem(map);

//创建客户端

HttpClient httpClient=new DefaultHttpClient();

//创建请求方式

HttpPost httpPost=new HttpPost(url);

httpPost.setEntity(new UrlEncodedFormEntity(parem,"UTF-8"));

//获得响应

HttpResponse response=httpClient.execute(httpPost);

if(response!=null)

{

return EntityUtils.toString(response.getEntity());

}

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

//转换参数

public List<BasicNameValuePair> Parem(Map<String , Object> map)

{

List<BasicNameValuePair> list=new ArrayList<BasicNameValuePair>();

Set<String> keys=map.keySet();

for(String key:keys)

{

list.add(new BasicNameValuePair(key,map.get(key).toString()));

}

//将参数转换

return list;

}


}


© 著作权归作者所有

共有 人打赏支持
上一篇: json字符串解析
下一篇: json字符串解析
绝版公子
粉丝 0
博文 2
码字总数 461
作品 0
黄冈
程序员
私信 提问
Android中的几种网络请求方式详解

Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面介绍四种常用网络请求方式,我这边是通过Android单元测试来完成这四种方法的,还不清楚Android的单元测试的同学们请...

天高空
2011/12/29
4.8K
4
Android Volley框架的几种post提交请求方式

首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Volley的...

gaolu
2014/08/08
0
1
安卓入门笔记之HttpURLConnection的使用

1.HttpURLConnection连接URL 1)创建一个URL对象 URL url = new URL(http://www.baidu.com); 2)利用HttpURLConnection对象从网络中获取网页数据 HttpURLConnection conn = (HttpURLConnectio......

twobeings
2014/05/10
0
0
Android端支持HTTP和HTTPS

作者:近乎团队 Android端的网络模块在程序开发中是至关重要的,今天我们来分享下Android端如何使用http和https 技术。 1 HTTP (Hypertext transfer protocol) 超文本传输 协议 是一个基于请...

小近
2014/10/22
15.1K
4
JavaDoc不显示 &Android中HttpGet和HttpPost &JSONObject

这几天试着解决的问题有以下几个: 1)开发Android的时候打开Eclipse ADT将鼠标移到基础类的方法上时,不能显示方法的具体信息,方法解释。起初不知道这是工具Eclipse的问题,还是Android的问...

FK339232727
2014/01/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

tomcat线程模型

Connector结构 BIO模式 NIO模式

grace_233
21分钟前
1
0
Javascript

变量定义 以$,_,字母开头 大小写敏感 var 关键字声明变量 声明未赋值undefined 数据类型 字符串,数字,布尔,数组,NULL,undefined 变量均为对象 函数 无默认值 var声明的是局部变量 函数外声明...

关元
22分钟前
1
0
文件系统、服务、防火墙、SELINUX——安全四大金刚

一提到安全,大家都会想到防火墙,和文件系统权限。而实际工作环境中,我们在Linux的安全配置,会涉及到四个级别。我们思考一个场景,你要在百度盘中存放一个文件,这个动作需要考虑下面四个...

Linux就该这么学
23分钟前
1
0
从源码角度理解Java设计模式——门面模式

一、门面模式介绍 门面模式定义:也叫外观模式,定义了一个访问子系统的接口,除了这个接口以外,不允许其他访问子系统的行为发生。 适用场景:子系统很复杂时,增加一个接口供外部访问。 优...

我叫刘半仙
33分钟前
2
0
新鲜出炉,2019最新大厂面试题总汇!

在这个互联网技术快速迭代的时代,每个程序员都知道技术对于职业发展的重要性,那些技术好的程序员不仅薪资高,而且大多数集中在一线互联网企业工作,让人感觉非常高大上的同时,也想去大厂做...

Java架构资源分享
42分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部