文档章节

访问HTTP网址的两种方式

JAVA枪手
 JAVA枪手
发布于 2016/10/08 09:05
字数 391
阅读 54
收藏 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
东城
高级程序员
私信 提问
urlrewriter转载

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

李永china
2016/06/02
27
0
快速找到Google可用Hosts的方法

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

长沙大东家
2015/01/13
0
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

没有更多内容

加载失败,请刷新页面

加载更多

CentOS配置Tomcat监听80端口,虚拟主机

Tomcat更改默认端口为80 更改的配置文件是: /usr/local/tomcat/conf/server.xml [root@test-a ~]# vim /usr/local/tomcat/conf/server.xml # 找到 Connector port="8080" protocol="HTTP/1......

野雪球
今天
5
0
《稻盛和夫经营学》读后感心得体会3180字范文

《稻盛和夫经营学》读后感心得体会3180字范文: 一代日本经营之圣稻盛和夫凭借刻苦勤奋的精神以及深植于佛教的商业道德准则,成为了“佛系”企业家的代表人物。在《稻盛和夫经营学》“领导人...

原创小博客
今天
3
0
java框架学习日志-5(常见的依赖注入)

依赖注入(dependency injection) 之前提到控制反转(Inversion of Control)也叫依赖注入,它们其实是一个东西,只是看的角度不同,这章详细说一下依赖注入。 依赖——指bean对象创建依赖于...

白话
今天
4
0
红外接收器驱动开发

背景:使用系统的红外遥控软件没有反应,然后以为自己接线错误,反复测试,结果烧坏了一个红外接收器,信号主板没有问题。所以自己开发了一个红外接收器的python驱动。接线参见https://my.os...

mbzhong
今天
2
0
ActiveMQ消息传送机制以及ACK机制详解

AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的。 一. ActiveMQ消息传送机...

watermelon11
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部