电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

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

瀏覽:128日期:2024-07-16 10:07:59
目錄1 前言2 HTTP Client2.1 創(chuàng)建 HTTP Client 文件2.2 HTTP Client 特性2.3 如何創(chuàng)建請(qǐng)求2.4 請(qǐng)求方式

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

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

1 前言

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

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

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

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

2 HTTP Client

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

注意:確保 HTTP Client 插件是安裝啟動(dòng)的,默認(rèn)是已安裝啟動(dòng)的。若沒(méi)有安裝,在 File - Settings - Plugins 路徑下進(jìn)行安裝,如下:

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

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

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

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

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

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

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

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

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

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

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

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

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

2.2 HTTP Client 特性

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

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

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

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

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

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

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

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

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

使用快捷鍵進(jìn)行創(chuàng)建請(qǐng)求,例如輸入 gtr 可以快速創(chuàng)建一個(gè)簡(jiǎn)單的 GET 請(qǐng)求,如下:

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

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

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

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

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

2.4 請(qǐng)求方式

GET

### GET request with a headerGET https://httpbin.org/ipAccept: application/json### GET request with parameterGET https://httpbin.org/get?show_env=1Accept: application/json### GET request with environment variablesGET {{host}}/get?show_env={{show_env}}Accept: application/json### GET request with disabled redirects# @no-redirectGET http://httpbin.org/status/301### GET request with dynamic variablesGET http://httpbin.org/anything?id={{$uuid}}&ts={{$timestamp}}###

POST

### Send POST request with json bodyPOST https://httpbin.org/postContent-Type: application/json{ 'id': 999, 'value': 'content'}### Send POST request with body as parametersPOST https://httpbin.org/postContent-Type: application/x-www-form-urlencodedid=999&value=content### Send a form with the text and file fieldsPOST https://httpbin.org/postContent-Type: multipart/form-data; boundary=WebAppBoundary--WebAppBoundaryContent-Disposition: form-data; name='element-name'Content-Type: text/plainName--WebAppBoundaryContent-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 bodyPOST https://httpbin.org/postContent-Type: application/json{ 'id': {{$uuid}}, 'price': {{$randomInt}}, 'ts': {{$timestamp}}, 'value': 'content'}###

PUT

PUT http://localhost:8080/person/putContent-Type: application/json{'name': '陳皮','age': 17}

PATCH

###PATCH http://localhost:8080/person/putContent-Type: application/json{'name': '陳皮','age': 17}

鑒權(quán)方式

### Basic authorization.GET https://httpbin.org/basic-auth/user/passwdAuthorization: Basic user passwd### Basic authorization with variables.GET https://httpbin.org/basic-auth/user/passwdAuthorization: Basic {{username}} {{password}}### Digest authorization.GET https://httpbin.org/digest-auth/realm/user/passwdAuthorization: Digest user passwd### Digest authorization with variables.GET https://httpbin.org/digest-auth/realm/user/passwdAuthorization: Digest {{username}} {{password}}### Authorization by token, part 1. Retrieve and save token.POST https://httpbin.org/postContent-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/headersAuthorization: Bearer {{auth_token}}###

斷言方式

### Successful test: check response status is 200GET 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 200GET 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-typeGET 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 bodyGET 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的詳細(xì)內(nèi)容,更多關(guān)于idea HTTP Client插件的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: IDEA
相關(guān)文章:
主站蜘蛛池模板: 塑料熔指仪-塑料熔融指数仪-熔体流动速率试验机-广东宏拓仪器科技有限公司 | 拉力测试机|材料拉伸试验机|电子拉力机价格|万能试验机厂家|苏州皖仪实验仪器有限公司 | 兰州UPS电源,兰州山特UPS-兰州万胜商贸 | 贴片电容-贴片电阻-二三极管-国巨|三星|风华贴片电容代理商-深圳伟哲电子 | 苏州注册公司_苏州代理记账_苏州工商注册_苏州代办公司-恒佳财税 | RTO换向阀_VOC高温阀门_加热炉切断阀_双偏心软密封蝶阀_煤气蝶阀_提升阀-湖北霍科德阀门有限公司 | 不锈钢列管式冷凝器,换热器厂家-无锡飞尔诺环境工程有限公司 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn 锂辉石检测仪器,水泥成分快速分析仪-湘潭宇科分析仪器有限公司 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 吹田功率计-长创耐压测试仪-深圳市新朗普电子科技有限公司 | 湖南档案密集架,智能,物证,移动,价格-湖南档案密集架厂家 | 稳尚教育加盟-打造高考志愿填报平台_新高考志愿填报加盟_学业生涯规划加盟 | 铝箔-铝板-花纹铝板-铝型材-铝棒管-上海百亚金属材料有限公司 | 百度爱采购运营研究社社群-店铺托管-爱采购代运营-良言多米网络公司 | 磨煤机配件-高铬辊套-高铬衬板-立磨辊套-盐山县宏润电力设备有限公司 | 苗木价格-苗木批发-沭阳苗木基地-沭阳花木-长之鸿园林苗木场 | 防勒索软件_数据防泄密_Trellix(原McAfee)核心代理商_Trellix(原Fireeye)售后-广州文智信息科技有限公司 | 切铝机-数控切割机-型材切割机-铝型材切割机-【昆山邓氏精密机械有限公司】 | 回转窑-水泥|石灰|冶金-巩义市瑞光金属制品有限责任公司 | 鹤壁创新仪器公司-全自动量热仪,定硫仪,煤炭测硫仪,灰熔点测定仪,快速自动测氢仪,工业分析仪,煤质化验仪器 | 精密交叉滚子轴承厂家,转盘轴承,YRT转台轴承-洛阳千协轴承 | 苗木价格-苗木批发-沭阳苗木基地-沭阳花木-长之鸿园林苗木场 | SMC-SMC电磁阀-日本SMC气缸-SMC气动元件展示网 | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | 邢台人才网_邢台招聘网_邢台123招聘【智达人才网】 | LED太阳能中国结|发光红灯笼|灯杆造型灯|节日灯|太阳能灯笼|LED路灯杆装饰造型灯-北京中海轩光电 | 安平县鑫川金属丝网制品有限公司,防风抑尘网,单峰防风抑尘,不锈钢防风抑尘网,铝板防风抑尘网,镀铝锌防风抑尘网 | 东莞市天进机械有限公司-钉箱机-粘箱机-糊箱机-打钉机认准东莞天进机械-厂家直供更放心! | 软文发布-新闻发布推广平台-代写文章-网络广告营销-自助发稿公司媒介星 | 东莞螺丝|东莞螺丝厂|东莞不锈钢螺丝|东莞组合螺丝|东莞精密螺丝厂家-东莞利浩五金专业紧固件厂家 | 保温杯,儿童婴童奶瓶,运动水壶「广告礼品杯定制厂家」超朗保温杯壶 | 环氧树脂地坪_防静电地坪漆_环氧地坪漆涂料厂家-地壹涂料地坪漆 环球电气之家-中国专业电气电子产品行业服务网站! | 网优资讯-为循环资源、大宗商品、工业服务提供资讯与行情分析的数据服务平台 | 鄂泉泵业官网|(杭州、上海、全国畅销)大流量防汛排涝泵-LW立式排污泵 | 小程序开发公司_APP开发多少钱_软件开发定制_微信小程序制作_客户销售管理软件-济南小溪畅流网络科技有限公司 | 穿线管|波纹穿线管|包塑金属软管|蛇皮管?闵彬专注弱电工程? | 家庭教育吧-在线家庭教育平台,专注青少年家庭教育 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 北京康百特科技有限公司-分子蒸馏-短程分子蒸馏设备-实验室分子蒸馏设备 | 深圳3D打印服务-3D打印加工-手板模型加工厂-悟空打印坊 | 达利园物流科技集团-|