日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

[VSCode插件推荐] REST Client: 也许是比Postman更好的选择

發(fā)布時(shí)間:2023/12/4 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [VSCode插件推荐] REST Client: 也许是比Postman更好的选择 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在測(cè)試REST API的時(shí)候,想必大家都會(huì)有不同的工具選擇。如果是基于CLI的話,大家應(yīng)該會(huì)選擇cURL。如果是GUI工具的話,相信很多人都會(huì)使用Postman。不過(guò)今天,筆者要推薦的是REST Client插件。也許,它是比Postman更好的選擇。

(掃描上方二維碼,訪問(wèn)插件的Marketplace頁(yè)面)

相比于Postman,REST Client支持了?cURL?和?RFC 2616?兩種標(biāo)準(zhǔn)來(lái)調(diào)用REST API。

RFC 2616

下面就是一個(gè)符合RFC 2616標(biāo)準(zhǔn)的POST請(qǐng)求

POST http://dummy.restapiexample.com/api/v1/create HTTP/1.1
content-type: application/json

{
? ?"name":"Hendry",
? ?"salary":"61888",
? ?"age":"26"
}

我們?cè)赩S Code新建一個(gè)以.http或者.rest?結(jié)尾的文件,填入你的HTTP請(qǐng)求,點(diǎn)擊Send Request,或者右鍵選擇Send Request,或者直接用快捷鍵 Ctrl+Alt+R ,你的REST API就執(zhí)行了,然后API Response就會(huì)顯示在右邊區(qū)域。是不是很方便?

cURL

下面是一個(gè)符合cURL標(biāo)準(zhǔn)的POST請(qǐng)求

curl -X POST "http://dummy.restapiexample.com/api/v1/create" -d "Hello World"

同樣地,也能通過(guò)REST Client在VS Code里一鍵運(yùn)行。

HTTP語(yǔ)言

REST Client 添加了HTTP語(yǔ)言的定義,支持把以 .http 或者 .rest 結(jié)尾的文件當(dāng)作HTTP語(yǔ)言,提供了語(yǔ)法高亮,代碼自動(dòng)補(bǔ)全,代碼注釋等功能。

看到這里,你也許會(huì)問(wèn),我直接用Postman在GUI上填一填REST API的各個(gè)字段不就行了,干嘛還要寫(xiě)一個(gè)HTTP的文件。其實(shí)直接有一個(gè)HTTP文件的最大好處,就是方便分享。比如說(shuō),你可以把HTTP文件文件放到GitHub,這樣的話,所有開(kāi)發(fā)或者使用項(xiàng)目的人都能復(fù)用這個(gè)HTTP文件了。也極大的方便管理你的所有REST API。

更方便的是,通過(guò)###分隔符,同一個(gè)HTTP文件里可以涵蓋多個(gè)HTTP請(qǐng)求。不像Postman,不同的HTTP請(qǐng)求需要放在不同的tab里。

代碼生成

“代碼生成”也是REST Client里一個(gè)很方便的功能,你可以方便地通過(guò) Generate Code Snippet 命令來(lái)把HTTP請(qǐng)求生成出不同編程語(yǔ)言的代碼:JavaScript, Python, C, C#, Java, PHP, Go, Ruby, Swift等等主流語(yǔ)言。

高階功能

其實(shí)REST Client還有很多的功能,有需求的童鞋可以慢慢挖掘,筆者列出了一些比較有用的高階功能:

  • Authentication:REST Client支持了Basic Auth,SSL Client Certificates,Azure Active Directory等多種驗(yàn)證機(jī)制

  • Cookies的支持

  • 支持 HTTP 3xx 的重定向

  • 變量的支持:環(huán)境變量,文件變量,預(yù)定義的系統(tǒng)變量等等

下面就是使用文件變量的一個(gè)例子,這樣在不同的HTTP請(qǐng)求中,變量就能共享了。其中,{{$datetime iso8601}} 是預(yù)定義的系統(tǒng)變量

@hostname = api.example.com
@port = 8080
@host = {{hostname}}:{{port}}
@contentType = application/json
@createdAt = {{$datetime iso8601}}

###

@name = hello

GET https://{{host}}/authors/{{name}} HTTP/1.1

###

PATCH https://{{host}}/authors/{{name}} HTTP/1.1
Content-Type: {{contentType}}

{
? ?"content": "foo bar",
? ?"created_at": {{createdAt}}
}


哈哈!最后再給大家透露下:其實(shí)REST Client的作者也是中國(guó)人哦~ 曾經(jīng)和筆者還是同事呢,是位大神哦!


總結(jié)

以上是生活随笔為你收集整理的[VSCode插件推荐] REST Client: 也许是比Postman更好的选择的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。