最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java 發(fā)送http和https請求的實例

 更新時間:2018年01月08日 14:49:54   作者:一包大豫竹  
下面小編就為大家分享一篇java 發(fā)送http和https請求的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

HTTP請求:

如果需要Json格式的自己轉(zhuǎn)下,度娘上N種姿勢…

//處理http請求 requestUrl為請求地址 requestMethod請求方式,值為"GET"或"POST" 
  public static String httpRequest(String requestUrl,String requestMethod,String outputStr){ 
    StringBuffer buffer=null; 
    try{ 
    URL url=new URL(requestUrl); 
    HttpURLConnection conn=(HttpURLConnection)url.openConnection(); 
    conn.setDoOutput(true); 
    conn.setDoInput(true); 
    conn.setRequestMethod(requestMethod); 
    conn.connect(); 
    //往服務器端寫內(nèi)容 也就是發(fā)起http請求需要帶的參數(shù) 
    if(null!=outputStr){ 
      OutputStream os=conn.getOutputStream(); 
      os.write(outputStr.getBytes("utf-8")); 
      os.close(); 
    } 
    //讀取服務器端返回的內(nèi)容 
    InputStream is=conn.getInputStream(); 
    InputStreamReader isr=new InputStreamReader(is,"utf-8"); 
    BufferedReader br=new BufferedReader(isr); 
    buffer=new StringBuffer(); 
    String line=null; 
    while((line=br.readLine())!=null){ 
      buffer.append(line); 
    } 
    }catch(Exception e){ 
      e.printStackTrace(); 
    } 
    return buffer.toString(); 
  } 

HTTPS請求:

1、https和http的區(qū)別我這里就不介紹了,在java 中訪問https鏈接的話需要有相應的SSL證書,如果沒有就無法訪問(使用http訪問https會返回403),所以我們要先自定義一個信任管理器。實現(xiàn)java自帶的X509TrustManger接口,代碼:

import java.security.cert.CertificateException; 
import java.security.cert.X509Certificate; 
import javax.net.ssl.X509TrustManager; 
public class MyX509TrustManager implements X509TrustManager { 
  @Override 
  public void checkClientTrusted(X509Certificate[] chain, String authType) 
      throws CertificateException { 
    // TODO Auto-generated method stub 
  } 
  @Override 
  public void checkServerTrusted(X509Certificate[] chain, String authType) 
      throws CertificateException { 
    // TODO Auto-generated method stub 
  } 
  @Override 
  public X509Certificate[] getAcceptedIssuers() { 
    // TODO Auto-generated method stub 
    return null; 
  } 
} 

2、然后我們就可以使用https請求了:

/* 
 * 處理https GET/POST請求 
 * 請求地址、請求方法、參數(shù) 
 * */ 
public static String httpsRequest(String requestUrl,String requestMethod,String outputStr){ 
  StringBuffer buffer=null; 
  try{ 
  //創(chuàng)建SSLContext 
  SSLContext sslContext=SSLContext.getInstance("SSL"); 
  TrustManager[] tm={new MyX509TrustManager()}; 
  //初始化 
  sslContext.init(null, tm, new java.security.SecureRandom());; 
  //獲取SSLSocketFactory對象 
  SSLSocketFactory ssf=sslContext.getSocketFactory(); 
  URL url=new URL(requestUrl); 
  HttpsURLConnection conn=(HttpsURLConnection)url.openConnection(); 
  conn.setDoOutput(true); 
  conn.setDoInput(true); 
  conn.setUseCaches(false); 
  conn.setRequestMethod(requestMethod); 
  //設置當前實例使用的SSLSoctetFactory 
  conn.setSSLSocketFactory(ssf); 
  conn.connect(); 
  //往服務器端寫內(nèi)容 
  if(null!=outputStr){ 
    OutputStream os=conn.getOutputStream(); 
    os.write(outputStr.getBytes("utf-8")); 
    os.close(); 
  } 
  //讀取服務器端返回的內(nèi)容 
  InputStream is=conn.getInputStream(); 
  InputStreamReader isr=new InputStreamReader(is,"utf-8"); 
  BufferedReader br=new BufferedReader(isr); 
  buffer=new StringBuffer(); 
  String line=null; 
  while((line=br.readLine())!=null){ 
    buffer.append(line); 
  } 
  }catch(Exception e){ 
    e.printStackTrace(); 
  } 
  return buffer.toString(); 
} 

以上這篇java 發(fā)送http和https請求的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • ReentrantLock 非公平鎖實現(xiàn)原理詳解

    ReentrantLock 非公平鎖實現(xiàn)原理詳解

    這篇文章主要為大家介紹了ReentrantLock 非公平鎖實現(xiàn)原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • SpringBoot實現(xiàn)發(fā)送QQ郵件的示例代碼

    SpringBoot實現(xiàn)發(fā)送QQ郵件的示例代碼

    這篇文章主要介紹了SpringBoot如何實現(xiàn)發(fā)送QQ郵件功能,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • Java中對象的銷毀方法分析

    Java中對象的銷毀方法分析

    這篇文章主要介紹了Java中對象的銷毀方法,較為詳細的分析了對象的功能、用法及銷毀對象對于程序運行的益處,需要的朋友可以參考下
    2015-04-04
  • Jmeter配置代理實現(xiàn)錄制過程圖解

    Jmeter配置代理實現(xiàn)錄制過程圖解

    這篇文章主要介紹了Jmeter配置代理實現(xiàn)錄制過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • java struts2學習筆記之線程安全

    java struts2學習筆記之線程安全

    這篇文章主要為大家詳細介紹了java struts2學習筆記之線程安全,感興趣的朋友可以參考一下
    2016-04-04
  • Springboot詳解RocketMQ實現(xiàn)廣播消息流程

    Springboot詳解RocketMQ實現(xiàn)廣播消息流程

    RocketMQ作為一款純java、分布式、隊列模型的開源消息中間件,支持事務消息、順序消息、批量消息、定時消息、消息回溯等,本篇我們了解如何實現(xiàn)廣播消息
    2022-06-06
  • Java靜態(tài)方法不具有多態(tài)性詳解

    Java靜態(tài)方法不具有多態(tài)性詳解

    下面小編就為大家?guī)硪黄狫ava靜態(tài)方法不具有多態(tài)性詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • Java中Lambda表達式使用詳細解讀

    Java中Lambda表達式使用詳細解讀

    這篇文章主要介紹了Java中Lambda表達式使用及詳解,lambda運行將函數(shù)作為一個方法的參數(shù),也就是函數(shù)作為參數(shù)傳遞到方法中,使用lambda表達式可以讓代碼更加簡潔,需要的朋友可以參考下
    2023-04-04
  • 詳解如何在spring boot中使用spring security防止CSRF攻擊

    詳解如何在spring boot中使用spring security防止CSRF攻擊

    這篇文章主要介紹了詳解如何在spring boot中使用spring security防止CSRF攻擊,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Spring Data + Thymeleaf 3 + Bootstrap 4 實現(xiàn)分頁器實例代碼

    Spring Data + Thymeleaf 3 + Bo

    本篇文章主要介紹了Spring Data + Thymeleaf 3 + Bootstrap 4 實現(xiàn)分頁器實例代碼,非常具有實用價值,需要的朋友可以參考下
    2017-05-05

最新評論

溧水县| 洪洞县| 高台县| 噶尔县| 鹿邑县| 定陶县| 梓潼县| 乳山市| 东乡族自治县| 安新县| 奈曼旗| 理塘县| 垦利县| 南京市| 贵定县| 西昌市| 抚宁县| 麻城市| 麻城市| 云阳县| 桃园市| 赞皇县| 韶山市| 元阳县| 大姚县| 剑河县| 梅河口市| 甘泉县| 白沙| 封开县| 宿迁市| 娄底市| 秭归县| 深泽县| 玉田县| 图木舒克市| 长兴县| 海伦市| 丰原市| 内江市| 岱山县|