网络请求
2016-05-13 11:25
976 查看
HttpClient get
//传过去url返回json/xml字符串
private String relut;
public static String Http(String url){
HttpClient ht=new DefaultHttpClient();
HttpGet get=new HttpGet(url);
try {
HttpResponse execute = ht.execute(get);
HttpEntity entity = execute.getEntity();
relut=EntityUtils.toString(entity);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return relut;
}
//HttpClient网络请求 post
public String send(String target) {
String target = "http://192.168.1.66:8081/blog/deal_httpclient.jsp"; //要提交的目标地址
HttpClient httpclient = new DefaultHttpClient(); //创建HttpClient对象
HttpPost httpRequest = new HttpPost(target); //创建HttpPost对象
//将要传递的参数保存到List集合中
List params = new ArrayList();
params.add(new BasicNameValuePair("param", "post")); //标记参数
params.add(new BasicNameValuePair("nickname", nickname.getText().toString())); //昵称
params.add(new BasicNameValuePair("content", content.getText().toString())); //内容
try {
httpRequest.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //设置编码方式
HttpResponse httpResponse = httpclient.execute(httpRequest); //执行HttpClient请求
if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ //如果请求成功
result += EntityUtils.toString(httpResponse.getEntity()); //获取返回的字符串
}else{
result = "请求失败!";
}
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace(); //输出异常信息
} catch (ClientProtocolException e) {
e.printStackTrace(); //输出异常信息
} catch (IOException e) {
e.printStackTrace(); //输出异常信息
}
return result;
}
HttpUrlconnection网络请求代码
/**
* 获取指定URL的响应字符串
* @param urlString
* @return
*/
private String getURLResponse(String urlString){
HttpURLConnection conn = null; //连接对象
InputStream is = null;
String resultData = "";
try {
URL url = new URL(urlString); //URL对象
conn = (HttpURLConnection)url.openConnection(); //使用URL打开一个链接
conn.setDoInput(true); //允许输入流,即允许下载
conn.setDoOutput(true); //允许输出流,即允许上传
conn.setUseCaches(false); //不使用缓冲
conn.setRequestMethod("GET"); //使用get请求
is = conn.getInputStream(); //获取输入流,此时才真正建立链接
InputStreamReader isr = new InputStreamReader(is);
BufferedReader bufferReader = new BufferedReader(isr);
String inputLine = "";
while((inputLine = bufferReader.readLine()) != null){
resultData += inputLine + "\n";
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(is != null){
try {
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
conn.disconnect();
}
}
return resultData;
}
//HttpUrlconnection网络请求图片
/**
* 从指定URL获取图片
* @param url
* @return
*/
private Bitmap getImageBitmap(String url){
URL imgUrl = null;
Bitmap bitmap = null;
try {
imgUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection)imgUrl.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
bitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
return bitmap;
}
//HttpUrlconnection网络请求 post
//传过去url返回json/xml字符串
private String relut;
public static String Http(String url){
HttpClient ht=new DefaultHttpClient();
HttpGet get=new HttpGet(url);
try {
HttpResponse execute = ht.execute(get);
HttpEntity entity = execute.getEntity();
relut=EntityUtils.toString(entity);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return relut;
}
//HttpClient网络请求 post
public String send(String target) {
String target = "http://192.168.1.66:8081/blog/deal_httpclient.jsp"; //要提交的目标地址
HttpClient httpclient = new DefaultHttpClient(); //创建HttpClient对象
HttpPost httpRequest = new HttpPost(target); //创建HttpPost对象
//将要传递的参数保存到List集合中
List params = new ArrayList();
params.add(new BasicNameValuePair("param", "post")); //标记参数
params.add(new BasicNameValuePair("nickname", nickname.getText().toString())); //昵称
params.add(new BasicNameValuePair("content", content.getText().toString())); //内容
try {
httpRequest.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //设置编码方式
HttpResponse httpResponse = httpclient.execute(httpRequest); //执行HttpClient请求
if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ //如果请求成功
result += EntityUtils.toString(httpResponse.getEntity()); //获取返回的字符串
}else{
result = "请求失败!";
}
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace(); //输出异常信息
} catch (ClientProtocolException e) {
e.printStackTrace(); //输出异常信息
} catch (IOException e) {
e.printStackTrace(); //输出异常信息
}
return result;
}
HttpUrlconnection网络请求代码
/**
* 获取指定URL的响应字符串
* @param urlString
* @return
*/
private String getURLResponse(String urlString){
HttpURLConnection conn = null; //连接对象
InputStream is = null;
String resultData = "";
try {
URL url = new URL(urlString); //URL对象
conn = (HttpURLConnection)url.openConnection(); //使用URL打开一个链接
conn.setDoInput(true); //允许输入流,即允许下载
conn.setDoOutput(true); //允许输出流,即允许上传
conn.setUseCaches(false); //不使用缓冲
conn.setRequestMethod("GET"); //使用get请求
is = conn.getInputStream(); //获取输入流,此时才真正建立链接
InputStreamReader isr = new InputStreamReader(is);
BufferedReader bufferReader = new BufferedReader(isr);
String inputLine = "";
while((inputLine = bufferReader.readLine()) != null){
resultData += inputLine + "\n";
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(is != null){
try {
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
conn.disconnect();
}
}
return resultData;
}
//HttpUrlconnection网络请求图片
/**
* 从指定URL获取图片
* @param url
* @return
*/
private Bitmap getImageBitmap(String url){
URL imgUrl = null;
Bitmap bitmap = null;
try {
imgUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection)imgUrl.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
bitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
return bitmap;
}
//HttpUrlconnection网络请求 post
public Stringsend(String target) { URL url; try { url = new URL(target); HttpURLConnection urlConn = (HttpURLConnection) url .openConnection(); // 创建一个HTTP连接 urlConn.setRequestMethod("POST"); // 指定使用POST请求方式 urlConn.setDoInput(true); // 向连接中写入数据 urlConn.setDoOutput(true); // 从连接中读取数据 urlConn.setUseCaches(false); // 禁止缓存 urlConn.setInstanceFollowRedirects(true); //自动执行HTTP重定向 urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); // 设置内容类型 DataOutputStream out = new DataOutputStream( urlConn.getOutputStream()); // 获取输出流 String param = "nickname=" + URLEncoder.encode(nickname.getText().toString(), "utf-8") + "&content=" + URLEncoder.encode(content.getText().toString(), "utf-8"); //连接要提交的数据 out.writeBytes(param);//将要传递的数据写入数据输出流 out.flush(); //输出缓存 out.close(); //关闭数据输出流 // 判断是否响应成功 if (urlConn.getResponseCode() == HttpURLConnection.HTTP_OK) { InputStreamReader in = new InputStreamReader( urlConn.getInputStream()); // 获得读取的内容 BufferedReader buffer = new BufferedReader(in); // 获取输入流对象 String inputLine = null; while ((inputLine = buffer.readLine()) != null) { result += inputLine + "\n"; } in.close(); //关闭字符输入流 } urlConn.disconnect(); //断开连接 } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return result; }
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件