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

詳解IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman

 更新時間:2021年05月24日 10:09:40   作者:陳皮的JavaLib  
HTTP Client 是 IDEA 自帶的一款簡潔輕量級的接口調(diào)用插件,通過它,我們能在 IDEA 上開發(fā),調(diào)試,測試 RESTful Web 服務(wù),接下來通過本文給大家分享IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman的知識,感興趣的朋友一起看看吧

Java公眾號【Java技術(shù)迷】一個在互聯(lián)網(wǎng)領(lǐng)先地位,微信搜索【Java技術(shù)迷】第一時間閱讀最新文章,通過下面下載鏈接,即可獲得我精心整理的技術(shù)資料,電子書籍,一線大廠面試資料和優(yōu)秀簡歷模板。

http://xiazai.jb51.net/202105/yuanma/javadzsh_jb51.rar

1 前言

當(dāng)我們在開發(fā)調(diào)試 Web 服務(wù)的時候,需要對接口進行調(diào)用測試;或者對接第三方系統(tǒng)時,需要調(diào)用遠程第三方的接口進行聯(lián)調(diào)。這時,相信大家首選的工具一般會是 Postman ,一款當(dāng)今比較流行而且功能齊全的接口調(diào)用調(diào)試工具。如下所示:

在這里插入圖片描述

不過我們一般使用 IntelliJ IDEA 代碼編輯器來開發(fā)和調(diào)試 Web 服務(wù),如果使用 Postman 工具來測試接口,不僅要在電腦上安裝 Postman ,還需要在不同工具之間切換,比較麻煩。幸運地的是 IDEA 自帶了一款簡潔輕量級的接口調(diào)用插件,HTTP Client。

在這里插入圖片描述

2 HTTP Client

HTTP Client 是 IDEA 自帶的一款簡潔輕量級的接口調(diào)用插件,通過它,我們能在 IDEA 上開發(fā),調(diào)試,測試 RESTful Web 服務(wù)。

注意:確保 HTTP Client 插件是安裝啟動的,默認是已安裝啟動的。若沒有安裝,在 File - Settings - Plugins 路徑下進行安裝,如下:

在這里插入圖片描述

2.1 創(chuàng)建 HTTP Client 文件

可以創(chuàng)建2種文件類型的 HTTP Client 文件,一種是臨時文件(scratch files,不跟項目工程掛鉤),一種是非臨時文件(physical files,跟項目工程掛鉤)。

如果你想創(chuàng)建的 HTTP Client 文件是為了臨時調(diào)用接口測試用的,不需要保留記錄供以后使用,則可以使用臨時文件;如果想存檔記錄請求參數(shù),請求結(jié)果等,后續(xù)再繼續(xù)使用,或者隨項目提交到遠程git倉庫,則建議使用非臨時文件。

創(chuàng)建 HTTP Client 臨時文件

在這里插入圖片描述

打開后,顯示界面和Postman差不多,不過這種風(fēng)格的界面被棄用了,官方不推薦我們使用,在最新版本的 IDEA 中已經(jīng)沒有這個界面了。

在這里插入圖片描述

官方推薦我們使用編碼式的風(fēng)格界面,點擊上個界面頂部的 Convert request to the new format ,即可打開新的 HTTP Client 界面。

在這里插入圖片描述

創(chuàng)建 HTTP Client 非臨時文件

可以在項目根目錄下創(chuàng)建一個存儲請求文件的文件夾,然后在里面創(chuàng)建 HTTP Client 請求文件,如下:

在這里插入圖片描述

2.2 HTTP Client 特性

HTTP 請求存儲在以.http.rest為后綴的文件中,并且?guī)в?API 小圖標(biāo)。

在這里插入圖片描述

請求文件可以包含多個請求,多個請求中間用3個井號 ### 隔開;如果是臨時文件,每次執(zhí)行請求后,會在請求下方生成對應(yīng)請求結(jié)果的文件鏈接,按住 Ctrl + 鼠標(biāo)左鍵可以打開。

在這里插入圖片描述

所有的請求結(jié)果,請求歷史記錄,cookies等信息會存放在 .idea 文件夾下,如下:

在這里插入圖片描述

2.3 如何創(chuàng)建請求


使用右上角的快捷按鈕創(chuàng)建請求,可以選擇不同方式的請求,如下:

在這里插入圖片描述

使用快捷鍵進行創(chuàng)建請求,例如輸入 gtr 可以快速創(chuàng)建一個簡單的 GET 請求,如下:

在這里插入圖片描述

使用 Ctrl + J 快捷鍵可以查看創(chuàng)建 HTTP 請求的所有快捷鍵,如下:

在這里插入圖片描述

通過 cURL 創(chuàng)建請求,點擊右上角的 Convert form cURL 按鈕,然后輸入 cURL 地址即可自動轉(zhuǎn)換,如下:

在這里插入圖片描述
在這里插入圖片描述

2.4 請求方式

GET

### GET request with a header
GET https://httpbin.org/ip
Accept: application/json

### GET request with parameter
GET https://httpbin.org/get?show_env=1
Accept: application/json

### GET request with environment variables
GET {{host}}/get?show_env={{show_env}}
Accept: application/json

### GET request with disabled redirects
# @no-redirect
GET http://httpbin.org/status/301

### GET request with dynamic variables
GET http://httpbin.org/anything?id={{$uuid}}&ts={{$timestamp}}

###

POST

### Send POST request with json body
POST https://httpbin.org/post
Content-Type: application/json

{
  "id": 999,
  "value": "content"
}

### Send POST request with body as parameters
POST https://httpbin.org/post
Content-Type: application/x-www-form-urlencoded

id=999&value=content

### Send a form with the text and file fields
POST https://httpbin.org/post
Content-Type: multipart/form-data; boundary=WebAppBoundary

--WebAppBoundary
Content-Disposition: form-data; name="element-name"
Content-Type: text/plain

Name
--WebAppBoundary
Content-Disposition: form-data; name="data"; filename="data.json"
Content-Type: application/json

< ./request-form-data.json
--WebAppBoundary--

### Send request with dynamic variables in request's body
POST https://httpbin.org/post
Content-Type: application/json

{
  "id": {{$uuid}},
  "price": {{$randomInt}},
  "ts": {{$timestamp}},
  "value": "content"
}

###

PUT

PUT http://localhost:8080/person/put
Content-Type: application/json

{"name": "陳皮","age": 17}

PATCH

###
PATCH http://localhost:8080/person/put
Content-Type: application/json

{"name": "陳皮","age": 17}

鑒權(quán)方式

### Basic authorization.
GET https://httpbin.org/basic-auth/user/passwd
Authorization: Basic user passwd

### Basic authorization with variables.
GET https://httpbin.org/basic-auth/user/passwd
Authorization: Basic {{username}} {{password}}

### Digest authorization.
GET https://httpbin.org/digest-auth/realm/user/passwd
Authorization: Digest user passwd

### Digest authorization with variables.
GET https://httpbin.org/digest-auth/realm/user/passwd
Authorization: Digest {{username}} {{password}}

### Authorization by token, part 1. Retrieve and save token.
POST https://httpbin.org/post
Content-Type: application/json

{
  "token": "my-secret-token"
}

> {% client.global.set("auth_token", response.body.json.token); %}

### Authorization by token, part 2. Use token to authorize.
GET https://httpbin.org/headers
Authorization: Bearer {{auth_token}}

###

斷言方式

### Successful test: check response status is 200
GET https://httpbin.org/status/200

> {%
client.test("Request executed successfully", function() {
  client.assert(response.status === 200, "Response status is not 200");
});
%}

### Failed test: check response status is 200
GET https://httpbin.org/status/404

> {%
client.test("Request executed successfully", function() {
  client.assert(response.status === 200, "Response status is not 200");
});
%}

### Check response status and content-type
GET https://httpbin.org/get

> {%
client.test("Request executed successfully", function() {
  client.assert(response.status === 200, "Response status is not 200");
});

client.test("Response content-type is json", function() {
  var type = response.contentType.mimeType;
  client.assert(type === "application/json", "Expected 'application/json' but received '" + type + "'");
});
%}

### Check response body
GET https://httpbin.org/get

> {%
client.test("Headers option exists", function() {
  client.assert(response.body.hasOwnProperty("headers"), "Cannot find 'headers' option in response");
});
%}

###

以上就是IntelliJ IDEA 自帶的 HTTP Client 接口調(diào)用插件吊打 Postman的詳細內(nèi)容,更多關(guān)于idea HTTP Client插件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Springboot實現(xiàn)多線程及線程池監(jiān)控

    Springboot實現(xiàn)多線程及線程池監(jiān)控

    線程池的監(jiān)控很重要,本文就來介紹一下Springboot實現(xiàn)多線程及線程池監(jiān)控,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • 通過java反射機制動態(tài)調(diào)用某方法的總結(jié)(推薦)

    通過java反射機制動態(tài)調(diào)用某方法的總結(jié)(推薦)

    下面小編就為大家?guī)硪黄ㄟ^java反射機制動態(tài)調(diào)用某方法的總結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • SpringBoot?Schedule調(diào)度任務(wù)的動態(tài)管理

    SpringBoot?Schedule調(diào)度任務(wù)的動態(tài)管理

    Scheduled定時任務(wù)是Spring?boot自身提供的功能,所以不需要引入Maven依賴包,下面這篇文章主要給大家介紹了關(guān)于SpringBoot通過@Scheduled實現(xiàn)定時任務(wù)以及問題解決的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • spring boot idea maven依賴找不到問題處理方法

    spring boot idea maven依賴找不到問題處理方法

    這篇文章主要介紹了spring boot idea 偶爾maven依賴找不到問題,這里總結(jié)了幾種處理方法,方便嘗試排查,對spring boot idea  maven依賴找不到問題感興趣的朋友跟隨小編一起看看吧
    2023-08-08
  • 聊聊Spring Boot 如何集成多個 Kafka

    聊聊Spring Boot 如何集成多個 Kafka

    這篇文章主要介紹了Spring Boot 集成多個 Kafka的相關(guān)資料,包括配置文件,生成者和消費者配置過程,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2023-10-10
  • 理解Java垃圾回收

    理解Java垃圾回收

    這篇文章主要幫助大家理解Java垃圾回收,通過實例學(xué)習(xí)java垃圾回收,什么是垃圾回收,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 如何實現(xiàn)bean初始化摧毀方法的注入

    如何實現(xiàn)bean初始化摧毀方法的注入

    這篇文章主要為大家介紹了如何實現(xiàn)bean初始化摧毀方法的注入詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • 詳解Log4j 日志文件存放位置設(shè)置

    詳解Log4j 日志文件存放位置設(shè)置

    這篇文章主要介紹了詳解Log4j 日志文件存放位置設(shè)置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • Java后端登錄實現(xiàn)返回token

    Java后端登錄實現(xiàn)返回token

    本文主要介紹了Java后端登錄實現(xiàn)返回token,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Spring?cloud負載均衡@LoadBalanced?&?LoadBalancerClient

    Spring?cloud負載均衡@LoadBalanced?&?LoadBalancerClient

    由于Spring?cloud2020之后移除了Ribbon,直接使用Spring?Cloud?LoadBalancer作為客戶端負載均衡組件,我們討論Spring負載均衡以Spring?Cloud2020之后版本為主,學(xué)習(xí)Spring?Cloud?LoadBalance
    2023-11-11

最新評論

静安区| 峡江县| 长乐市| 广昌县| 金寨县| 梓潼县| 永登县| 鸡泽县| 思南县| 金坛市| 洪洞县| 于都县| 永顺县| 梁山县| 临漳县| 彭山县| 颍上县| 高唐县| 德江县| 闽清县| 柳江县| 绥宁县| 松潘县| 五峰| 阿克陶县| 城口县| 澳门| 秭归县| 全州县| 杭州市| 堆龙德庆县| 玉林市| 十堰市| 军事| 山东省| 疏勒县| 钦州市| 花莲市| 惠来县| 宁蒗| 长子县|