访问HTTP网址的两种方式
访问HTTP网址的两种方式
JAVA枪手 发表于1年前
访问HTTP网址的两种方式
  • 发表于 1年前
  • 阅读 38
  • 收藏 0
  • 点赞 0
  • 评论 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(); //中断连接
    }
 }

共有 人打赏支持
粉丝 8
博文 79
码字总数 15221
评论 (0)
×
JAVA枪手
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: