烦人的日子终于过去啦,终于又可以写博客啦,对自己的android学习做个总结,方便以后查看...。。。

一、在android用Get方式发送http请求,使用的是java标准类,也比较简单。

主要分以下几步:

1.构造URL

URL url = new URL(String path);

2.设置连接

httpURLConnection = (HttpURLConnection) url.openConnection();
//超时时间
httpURLConnection.setConnectTimeout(3000);
//表示设置本次http请求使用GET方式
httpURLConnection.setRequestMethod("GET");
int responsecode = httpURLConnection.getResponseCode();//返回至为响应编号,如:HTTP_OK表示连接成功。
3.获取返回数据

if(responsecode == HttpURLConnection.HTTP_OK){
inputStream = httpURLConnection.getInputStream();
}   //得到inputStream 就好办啦。
new InputStreamReader(inputStream,"utf-8")

4.关闭连接

void disconnect()

二、下面通过一个简单的Demo实现get方式的请求:

package com.http.get;  

import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL; public class HttpUtils { private static String URL_PATH="http://www.baidu.com";
private static HttpURLConnection httpURLConnection = null;
public HttpUtils(){ } public static void shuchu(){
InputStream inputStream = getInputStream();
String result;
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream,"utf-8"));
result = "";
String line = "";
try {
while((line = reader.readLine())!= null){
result = result+ line;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(result);
httpURLConnection.disconnect();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
/**
* 获取服务端的数据,以InputStream返回
* @return
*/
public static InputStream getInputStream(){
InputStream inputStream = null; try {
URL url = new URL(URL_PATH);
if(url != null){
try {
httpURLConnection = (HttpURLConnection) url.openConnection();
//超时时间
httpURLConnection.setConnectTimeout(3000);
//表示设置本次http请求使用GET方式
httpURLConnection.setRequestMethod("GET");
int responsecode = httpURLConnection.getResponseCode(); if(responsecode == HttpURLConnection.HTTP_OK){
inputStream = httpURLConnection.getInputStream();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return inputStream;
}
public static void main(String[] args){
//保存文件到本地
//saveImageToDisk();
shuchu();
}
}

  //因为get方式是这ava标准类,直接写的java程序,不过都一样,android中也是一样的。。

简单的访问了百度,返回的就是百度搜索首页的源代码:图片一直上传不了。。。就不截图啦。

正确返回的就是你在网页单击右键有个查看源代码,返回的就是它,输出的也是它,自己可以去对比下一样不,是一样的。。

在android用Get方式发送http请求的更多相关文章

  1. android中Post方式发送HTTP请求

    Post方式比Get方式要复杂一点,因为该方式需要将请求的参数放在http请求的正文中,所以需要构造请求体. 步骤: 1.构造URL URL url = new URL(PATH); 2.设置连接 H ...

  2. 安卓基础之Get方式发送http请求

    本文参考作者:超超boy 链接:https://www.cnblogs.com/jycboy/p/post01.html 一.在android用Get方式发送http请求,使用的是java标准类. 主 ...

  3. WebClient以POST方式发送Web请求

    本例使用WebClient以POST方式发送Web请求并下载一个文件,难点是postData的构造,发送Web请求时有的网站要求可能要求 Cookies前后一致.其中application/x-www ...

  4. AJAX方式发送远程请求报错:No 'Access-Control-Allow-Origin' header

    AJAX GET方式发送远程请求,chrome开发者工具console中报错:XMLHttpRequest cannot load http://www.shikezhi.com/ajax/getDa ...

  5. python通过get,post方式发送http请求和接收http响应的方法,pythonget

    python通过get,post方式发送http请求和接收http响应的方法,pythonget 本文实例讲述了python通过get,post方式发送http请求和接收http响应的方法.分享给大家 ...

  6. python通过get方式,post方式发送http请求和接收http响应-urllib urllib2

    python通过get方式,post方式发送http请求和接收http响应-- import urllib模块,urllib2模块, httplib模块 http://blog.163.com/xyc ...

  7. 网络相关系列之中的一个:Android中使用HttpClient发送HTTP请求

    一.HTTP协议初探: HTTP(Hypertext Transfer Protocol)中文 "超文本传输协议",是一种为分布式,合作式,多媒体信息系统服务,面向应用层的协议,是 ...

  8. Android 的OkHttp(发送网络请求)

    今天讲的是和HttpURLConnection差不多的OkHttp; 先把网站献上: 官网介绍okhttp的: https://square.github.io/okhttp/ 下载postman的: ...

  9. Android面向HTTP协议发送post请求

    /** * 採用post请求的方式 * * @param username * @param password * @return null表示求得的路径有问题,text返回请求得到的数据 */ pu ...

随机推荐

  1. webpack打包压缩工具的使用方法

    具体使用方法参考来源http://www.cnblogs.com/Leo_wl/p/4793722.html 必须注意的地方: 一.webpack在nodejs环境下运行 二,每个目录下都必须有一个w ...

  2. Windows Azure Virtual Machine (31) 迁移Azure虚拟机

    <Windows Azure Platform 系列文章目录> 为什么要写这篇Blog? 之前遇到过很多客户提问: (1)我之前创建的虚拟机,没有加入虚拟网络.现在需要重新加入虚拟机网络, ...

  3. 用SQL语句查找包含有某个关键字的存储过程、触发器、函数等(仅适用MS SQL SERVER)

    第一种方法:利用系统表进行查询   --将text替换成你要查找的内容  select name  from sysobjects o, syscomments s  where o.id = s.i ...

  4. [Asp.net 5] DependencyInjection项目代码分析

    最近在研究开源代码,正好发现Asp.net5的源码,下载地址:https://github.com/aspnet. 今天主要讲的是DependencyInjection这部分,抛砖引玉,供大家参考,也 ...

  5. Razor语法的一些特殊需求输出

    开发ASP.NET MVC,常会使用Razor来呈现内容.下面有几个特殊需求的输出,Insus.NET列出来让大家参考. 双@@输出只有一个. 在Razor的语法中,如果想输出html,它会有两种语法 ...

  6. Socket开发框架之数据加密及完整性检查

    在前面两篇介绍了Socket框架的设计思路以及数据传输方面的内容,整个框架的设计指导原则就是易于使用及安全性较好,可以用来从客户端到服务端的数据安全传输,那么实现这个目标就需要设计好消息的传输和数据加 ...

  7. 使用DocX开源组件,实现动态数据的填充。

    1.先解释一下,什么叫做动态数据,动态数据指的是,一条数据的格式固定,但数据的条数不固定. 2.应用环境,在一个表格当中如果,现在表格有三行n列,如果你需要在表格第一行后添加同等规格的一行或n行,应该 ...

  8. jquery层级原则器(匹配父元素下的子元素)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 修正 Memo 設定為 ReadOnly 後, 無法有複製的功能

    问题:当 Memo 設定為 ReadOnly = True 後, 选取一段文字后,無法有複製的功能. 适用:XE6 Android 系统(目前 iOS 还找不到方法) 修正方法: 请将源码 FMX.P ...

  10. IOS高德地图逆地理编码定位+网络判断

    先说下这功能的流程,  流程:判断用户是否联网--->获取用户地理位置经纬度--->通过经纬度去查询地理位置名称 //高德地图 @property (nonatomic, strong) ...