文档章节

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

绝版公子
 绝版公子
发布于 2014/04/13 10:12
字数 350
阅读 155
收藏 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;

}


}


© 著作权归作者所有

共有 人打赏支持
绝版公子
粉丝 0
博文 2
码字总数 461
作品 0
黄冈
程序员
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
JavaDoc不显示 &Android中HttpGet和HttpPost &JSONObject

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

FK339232727
2014/01/17
0
0
六款值得推荐的android(安卓)开源框架简介【转】

1、volley 项目地址 https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载; (2) 网络请求的排序(scheduling) (3) 网络请求的优先级处理 (4) 缓存 (5) 多级别取消请求...

hkstar35
2014/07/11
0
0
六款值得推荐的android(安卓)开源框架简介【转】

1、volley 项目地址 https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载; (2) 网络请求的排序(scheduling) (3) 网络请求的优先级处理 (4) 缓存 (5) 多级别取消请求...

火蚁
2014/07/09
0
1

没有更多内容

加载失败,请刷新页面

加载更多

day99-20180926-英语流利阅读-待学习

换汤不换药的美容大忽悠:从抗衰老到肌肤焕发新生 Lala 2018-09-26 1.今日导读 说到护肤品,一个个大牌广告就浮现在我们眼前:皮肤吹弹可破的女明星手捧功能各异的瓶瓶罐罐,暗示着消费者买买...

飞鱼说编程
33分钟前
3
0
FFmpeg Maintainer赵军:FFmpeg关键组件与硬件加速

大家好!我是赵军,现就职于英特尔的DCG从事基于FFmpeg的硬件优化工作,两年多前加入FFmpeg社区,2018年4月成为FFmpeg的其中的一个FFmpeg Maintainer,主要负责FFmpeg的硬件优化工作。 概览:...

yizhichao
今天
1
0
ehlib 修改 使行号字体颜色 与标题字体颜色 一致

对ehlib 显示效果不够满意,而做的调整 修改这个过程:procedure TCustomDBGridEh.DrawIndicatorCell(ACol, ARow: Longint; AreaCol, AreaRow: Longint; ARect: TRect; AState: TGri......

vga
今天
1
0
Bash重定向详解

Bash重定向详解 Bash的重定向指的是将命令的输入和输出导向不同地方,而不是默认的标准输入、标准输出和标准错误。Bash的重定向实际上是对标准输入、标准输出和标准错误的重置,进而将所需输...

小陶小陶
今天
3
0
EventBus原理深度解析

一、问题描述 在工作中,经常会遇见使用异步的方式来发送事件,或者触发另外一个动作:经常用到的框架是MQ(分布式方式通知)。如果是同一个jvm里面通知的话,就可以使用EventBus。由于Event...

yangjianzhou
今天
54
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部