黄色午夜网站-夜夜骑日日-国产高清黄色-精品超清无码视频在线观看-欧美精品黑人粗大免费-亚洲成av人不卡无码影片-国产精选h网站-国内少妇高潮嗷嗷叫正在播放-国产欧美一区二区精品久久久-99亚洲精品自拍av成人-久久伊人成人网-黄色片毛片-日本免费一区高清观看-99er热精品视频-成年女人a毛片免费视频-久久精品一本到99热免费-男人天堂五月天-日韩吃奶摸下aa片免费观看-国产做受高潮漫动-欧美黑人又粗又硬xxxxx喷水

網站開發 APP開發 小程序開發 SEO優化 公司新聞

使用JDK原生的API進行網絡請求

2018-07-30 09:53:06
1803

  現在很多新出的技術都需要訪問接口,像什么第三方登錄啊之類的

  這個時候就少不了訪問網絡的工具類了啊,jdk也有自帶的工具類HttpUrlconnection

  我們來講這個東西如何使用

  首先我們需要構建一個URL來獲取,請求的地址把地址放在構造方法里面就好了

  第二步重頭戲就來了 我們要構建一個HTTPUrlconnection對象,但是這個對象是沒有構造方法的

  需要使用URL的Openconnection來創建

  創建完了之后呢 我們要設置請求的參數(請求方法啊, 延遲啊, 輸入輸出流啊)

  1. get請求

  參數是直接追加到URl里面的,由于要從它里面讀取參數,所以他的DoInput就要設置為true

  由于不用向它里面輸出參數,所以他的DoOutPut參數就設置為false

  由于HTTP緩存用來提高性能,又由于GET與POST的諸多區別,get的緩存都被設置為true

  由于GET請求,請求參數放到URL里面所以不存在主體部分所以就不存在ContentType

  由于GET請求一次只發送一個TCP數據包, 所以就不用設置Keep-alive

  設置重定向選擇為true

  2. POST請求

  參數是不能放到url里面的,所以說他要向connections輸出參數,DoOutPut參數就設置為true

  由于他也要從connections讀取參數,DoInput設置為true

  由于HTTP緩存用來提高性能,又由于GET與POST的諸多區別,post的緩存都被設置為true

  由于POTS請求一次只發送兩個TCP數據包, 所以就要設置Keep-alive

  設置重定向選擇為true

  把寫好的參數使用a=a&b=b的方式當做字符串放到POST請求的主題里面

  使用connections的getOutPutStream獲得PrintWriter對象, 使用write輸出參數,記得flush和close

  讀取響應都是一樣的

  1. 狀態碼

  一般常見的狀態碼有 200響應成功 301資源被永久轉移 404找不到資源 500服務器錯誤

  狀態碼一般有三個十進制的數字組成, 第一個十進制數字定義了狀態碼的類型, 共有五鐘類型

  1** : 服務器收到請求,繼續執行

  2** : 成功,操作被成功接受并處理

  3** : 重定向, 需要進一步操作

  4** : 客戶端錯誤, 找不到資源

  5** : 服務器錯誤,處理過程中發生錯誤

  2.服務器的響應

  讀取數據都是用的inputStream我們可以把它轉為BufferReader提高性能 ,

  使用readline循環讀取

  最后關閉連接

  connection.disconnection

?