文档章节

访问HTTP网址的两种方式

JAVA枪手
 JAVA枪手
发布于 2016/10/08 09:05
字数 391
阅读 47
收藏 0

一、使用HttpClient:

NameValuePair username = new BasicNameValuePair("username", "zhangsan");
NameValuePair password = new BasicNameValuePair("password","1qaz2wsx");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(username);
params.add(password);
String validateURL = "http://10.1.1.0:8080/dbconnect/ConnectServlet";

try {

        HttpParams httpParams = new BasicHttpParams();

        HttpConnectionParams.setConnectionTimeout(httpParams,5000); //设置连接超时为5秒

        HttpClient client = new DefaultHttpClient(httpParams); // 生成一个http客户端发送请求对象

        HttpPost httpPost = new HttpPost(urlString); //设定请求方式

          if (params!=null && params.size()!=0) {
              //把键值对进行编码操作并放入HttpEntity对象中
              httpPost.setEntity(new UrlEncodedFormEntity(params,HTTP.UTF_8));
           }

        HttpResponse httpResponse = client.execute(httpPost); // 发送请求并等待响应

          // 判断网络连接是否成功
          if (httpResponse.getStatusLine().getStatusCode() != 200) {
             System.out.println("网络错误异常!");
           }else{

             HttpEntity entity = httpResponse.getEntity(); // 获取响应里面的内容
             inputStream = entity.getContent();  // 得到服务气端发回的响应的内容(都在一个流里面)
             // 得到服务气端发回的响应的内容(都在一个字符串里面)
             String strResult = EntityUtils.toString(entity); 

             System.out.println(strResult);

       }

      } catch (Exception e) {
         e.printStackTrace();
  }

 

二、使用HttpURLConnection:

String validateUrl="http://10.1.1.0:8080/dbconnect/ConnectServlet?username=zhangsan&password=1qaz2wsx";

try {

       URL url = new URL(validateUrl); //创建URL对象

       //返回一个URLConnection对象,它表示到URL所引用的远程对象的连接

       HttpURLConnection conn = (HttpURLConnection) url.openConnection();

       conn.setConnectTimeout(5000); //设置连接超时为5秒

       conn.setRequestMethod("GET"); //设定请求方式

       conn.connect(); //建立到远程对象的实际连接

       //返回打开连接读取的输入流

       BufferedInputStream dis = new BufferedInputStream(conn.getInputStream());        

      //判断是否正常响应数据 

        if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
           System.out.println("网络错误异常!");
       }else{

       //读取数据流      

     byte[] contents = new byte[1024];  

      int byteRead = 0;  

      String strFileContents;  

      try {  

               while((byteRead = dis.read(contents)) != -1){  

                strFileContents = new String(contents,0,byteRead);  

                System.out.println(strFileContents);  

           }  catch (IOException e) {  

            e.printStackTrace();  

        }  

        dis.close();

}

} catch (Exception e) {
   e.printStackTrace();
  } finally {
    if (conn != null) {
     conn.disconnect(); //中断连接
    }
 }

© 著作权归作者所有

共有 人打赏支持
JAVA枪手
粉丝 7
博文 95
码字总数 15221
作品 0
东城
高级程序员
快速找到Google可用Hosts的方法

source:http://www.williamlong.info/archives/3878.html 快速找到Google可用Hosts的方法   Google这些天被封了大量IP,导致现在访问Google服务越来越困难,使用Google搜索的用户也大量下降...

长沙大东家
2015/01/13
0
0
urlrewriter转载

现在大部分的网站和商城都会使用到URL重写,接触到这个,也是因为正在做的电子商务商城。URL重写,是将原有的URL采用另一种规则来显示,使得用户方便访问同时也屏蔽一些信息。   在此说下它...

李永china
2016/06/02
27
0
【铜】第124篇 一对一视频录制(三)及网站注册 周四

关键词:一对一视频录制,网站注册 一、一对一视频录制 1.1 参考网址 https://www.webrtc-experiment.com/RecordRTC/ 视频录制下载网址: https://github.com/muaz-khan/RecordRTC 1.2 网页录...

little_money
06/29
0
0
Redmine 学习笔记——安装篇

Redmine 学习笔记——安装篇 分类: 项目管理 2011-06-20 11:4413人阅读评论(0)收藏举报 Redmine的介绍我就不写了,不知道的可以Google或者百度一下。 Redmine是做什么用的?简单点说,就是进...

雕栏玉砌
2011/07/25
0
0
python爬虫学习——urllib、urllib2库的使用

1.urllib2库的使用示例 首先我们调用的是urllib2库里面的urlopen方法,传入一个URL,这个网址是百度首页,协议是HTTP协议,当然你也可以把HTTP换做FTP,FILE,HTTPS 等等,只是代表了一种访问控...

十年磨一剑3344
02/23
95
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

python标准输入输出

input() 读取键盘输入 input() 函数从标准输入读入一行文本,默认的标准输入是键盘。 input 可以接收一个Python表达式作为输入,并将运算结果返回。 print()和format()输出 format()输出...

colinux
25分钟前
0
0
Python 核心编程 (全)

浅拷贝和深拷贝 1.浅拷贝:是对于一个对象的顶层拷贝,通俗的理解是:拷贝了引用,并没有拷贝内容。相当于把变量里面指向的一个地址给了另一个变量就是浅拷贝,而没有创建一个新的对象,如a...

代码打碟手
37分钟前
0
0
PHP 对象比数组省内存?错!数组比对象省内存?错!

刚刚一个群里有人引出了 PHP 数组和对象占用内存谁多谁少的问题。我想起之前我好像也测试过这个问题,和群里人说的对象比数组节省内存的结论相反,我得出的是数组比对象节省内存。 但今天,我...

宇润
54分钟前
1
0
memcached命令行及其用法

21.5 memcached命令行 创建数据 yum install -y telnet 利用telnet命令连接memcached数据库 telnet 127.0.0.1 11211 #写入数据 set key2 0 30 212STORED 这个是错误的示范,因为0 30 已经...

lyy549745
54分钟前
0
0
Maven私服

Maven私服 一、简介 当多人项目开发的时候,尤其聚合项目开发,项目和项目之间需要有依赖关系,通过maven私服,可以保存互相依赖的jar包,这样的话就可把多个项目整合到一起。 如下图: Inst...

星汉
57分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部