idea內的http客戶端工具

intellj idea提供了強大的工具集合,其中自然包括HTTP客戶端。雖然post man等第三方http客戶端提供了強大的功能,但是intellj idea的優勢在于免費與方便。

1)可視化形式

通過idea的http客戶端創建http請求也很方便,如下,Tools->HTTP Client->Test RESTful Web Service:

image.png

創建出一個可視化的http請求窗口:

image.png

不過,這種可視化形式的窗口已經不被建議使用了,轉而建議使用文件形式的。

2)文件形式

文件形式的http請求使用起來也很簡單,在任意目錄創建一個.http 后綴的文件即可。

idea也提供了非常人性化的教程,鼠標焦點移動到.http文件內,右上角出現的兩個圖標,其中一個是http請求歷史記錄,另一個就是不同類型的http請求集合。隨便打開一個就可以依葫蘆畫瓢自定義自己的http請求了:

image.png

請求百度首頁:

image.png
GET http://www.baidu.com
Accept: application/json

###

點擊左邊的三角形即可執行。

當然還有更多復雜的post請求,參數,斷言結果之類的豐富功能,參考提供的示例即可。

3)快捷鍵

idea提供了快捷鍵來簡化以上的手輸http請求,有以下一些:

  • gtr:創建普通GET請求,通過tab鍵一步步自定義信息
GET http://localhost:80/api/item
Accept: application/json

###
  • gtrp: 與gtr相比,多了一個參數位置
GET http://localhost:80/api/item?id=99
Accept: application/json

###
  • ptr:創建普通POST請求, json格式請求參數
POST http://localhost:80/api/item
Content-Type: application/json

{}

###
  • ptrp:同上,請求參數為kv格式
POST http://localhost:80/api/item
Content-Type: application/x-www-form-urlencoded

id=99&content=new-element

###
  • mptr: 復雜類型POST請求
POST http://localhost:80/api/item
Content-Type: multipart/form-data; boundary=WebAppBoundary

--WebAppBoundary
Content-Disposition: form-data; name="field-name"

field-value
--WebAppBoundary--

###
  • fptr:文件上傳
POST http://localhost:80/api/item
Content-Type: multipart/form-data; boundary=WebAppBoundary

--WebAppBoundary
Content-Disposition: form-data; name="field-name" filename="file.txt"

< ./relative/path/to/local_file.txt
--WebAppBoundary--

###
4)環境變量&引用

idea提供變量機制,變量以json格式,固定存儲在以下兩個文件中:

  1. http-client.env.json
  2. http-client.private.env.json

結構為:

{
  "product": {
    "var": "bar"
  },
  "test": {
    "var": "foo"
  }
}

外層是環境名稱,內層是變量名稱;這兩個文件可以任意位置。在運行時,會提示使用哪個環境運行http請求:

使用時,通過{{}}引用即可,示例:

http-client.env.json

{
  "dev":{
    "bar": "bar-val"
  }
}

test.http

GET http://www.baidu.com/{{bar}}
Accept: application/json

###

運行時:

image.png

可以看到可以使用定義的環境,來運行http請求:

image.png
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • IDEA-HTTP工具 在intellij idea2017.3版本中,增加了一個類VS Code的Rest-cl...
    新簽名閱讀 23,111評論 7 23
  • # 一度蜜v3.0協議 --- # 交互協議 [TOC] ## 協議說明 ### 請求參數 下表列出了v3.0版協...
    c5e350bc5b40閱讀 668評論 0 0
  • Swift1> Swift和OC的區別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,136評論 1 32
  • 自從用了todoist,每周待辦事項數一直維持在40個左右,且不說這個數字是否太大,特別教我煩惱的是每周絕大部分工...
    我是天藍控閱讀 2,427評論 0 4
  • 幣圈大咖,人稱寶二爺,Bitagel基金創始人,比特幣和區塊鏈領域的天使投資人,早期比特幣玩家。也是幣圈一直傳聞的...
    MrLucky_Mitoken閱讀 845評論 0 0