再見(jiàn)了,Postman!HTTP 接口測(cè)試出現(xiàn)新殺器

作為 Web 開(kāi)發(fā)人員,開(kāi)發(fā)和調(diào)試 REST API 是家常便飯。我們會(huì)用一些工具來(lái)模擬 HTTP 請(qǐng)求,最常用的可能就是 Postman 了。前不久還冒出一個(gè)女版 Postman,那就是 Postwoman,詳情可見(jiàn)我之前寫(xiě)的一篇介紹:還在用 Postman 測(cè)試接口?是時(shí)候試試 Postwoman 了!
這些工具確實(shí)很實(shí)用,但也存在一些局限性。

通過(guò)模擬 HTTP 請(qǐng)求來(lái)測(cè)試 REST API 是比較常見(jiàn)的做法,但是要編輯接口文檔并進(jìn)行版本管理,或者就是簡(jiǎn)單地跟團(tuán)隊(duì)成員共享,恐怕需要用到更多、更復(fù)雜的工具了。

有人說(shuō) Postman 付費(fèi)版本就有這些功能呀。沒(méi)錯(cuò),但是要掏錢(qián)?。”局苁t省的原則,有免費(fèi)工具干嘛不用呢。再者,團(tuán)隊(duì)每個(gè)人都需要用 Postman 才行,我只想單純寫(xiě)個(gè)代碼,不想裝那么多工具……

好了,大殺器即將出場(chǎng)。它就是 REST Client !

image

REST Client 是一個(gè) VS Code 插件.

裝上它,你就可以在 VS Code 里發(fā)送 HTTP 請(qǐng)求,查看響應(yīng)結(jié)果。這一切只需要一個(gè)文本文件,很容易加入到代碼倉(cāng)庫(kù)中,方便版本管理。

優(yōu)缺點(diǎn)

它主要的優(yōu)勢(shì)就是可以做版本管理和團(tuán)隊(duì)共享。

如果你在開(kāi)發(fā)某個(gè) API,你想讓其他開(kāi)發(fā)小伙伴們也知道怎么用你的接口,REST Client 就是個(gè)很好的幫手。

另外一個(gè)優(yōu)勢(shì)就是簡(jiǎn)單。前面說(shuō)了,它只需要一個(gè)文本文件。它不但充當(dāng)了發(fā)送請(qǐng)求的參數(shù)配置的角色,還可以作為接口文檔,當(dāng)你忘了某個(gè)接口怎么用的,直接翻出這個(gè)文件看看就行了!

缺點(diǎn)呢?那就是你要用 VS Code……作為 VS Code 鐵粉,這根本就不是個(gè)事兒!當(dāng)然,你要是用別的編輯器,那就……話說(shuō) VS Code 它不香嗎?

用法

很簡(jiǎn)單,只要?jiǎng)?chuàng)建一個(gè)擴(kuò)展名為 .http 的文件就行。比如要調(diào)用新浪股票的接口,我們新建一個(gè)stock.http文件:

@baseUrl = http://hq.sinajs.cn

GET {{baseUrl}}/list=sh600519
Accept: application/json

編輯完后,編輯器里會(huì)出現(xiàn)一個(gè) Send Request 按鈕,點(diǎn)擊就可以發(fā)送請(qǐng)求了。請(qǐng)求結(jié)果會(huì)顯示在右邊的新 tab 里。是不是巨簡(jiǎn)單?

image

通常 REST API 不會(huì)這么簡(jiǎn)單,可能還有其它 POST,PUT,DELETE 等各種請(qǐng)求方法,還會(huì)需要請(qǐng)求參數(shù)或 Header 等。寫(xiě)法也很簡(jiǎn)單,其實(shí)跟瀏覽器開(kāi)發(fā)工具里顯示的差不多,只要遵循 RFC 2616格式要求,包含請(qǐng)求方法、header和 body 就行了。這里需要注意,header 內(nèi)容要緊跟請(qǐng)求方法下一行,不能有空行,否則就是無(wú)效的。

POST https://example.com/comments HTTP/1.1
content-type: application/json

{
"name": "sample",
"time": "Wed, 21 Oct 2015 18:27:50 GMT"
}

進(jìn)階

實(shí)際項(xiàng)目中可能有更復(fù)雜的場(chǎng)景,比如要測(cè)試不同環(huán)境下的接口。為此,REST Client 提供了各種變量。變量分為兩大類(lèi):自定義變量和系統(tǒng)變量。顧名思義,自定義變量就是用戶自己定義的變量。它又分為環(huán)境變量、文件變量和請(qǐng)求變量。系統(tǒng)變量就是插件內(nèi)置的一些變量,可以直接拿來(lái)用。具體用法可以參考官方文檔。

舉個(gè)例子,插件的環(huán)境變量是在 VS Code 的配置文件中定義的,也就是 settings.json文件:

"rest-client.environmentVariables": {
    "$shared": {
        "version": "v1",
        "prodToken": "foo",
        "nonProdToken": "bar"
    },
    "local": {
        "version": "v2",
        "host": "localhost",
        "token": "{{$shared nonProdToken}}",
        "secretKey": "devSecret"
    },
    "production": {
        "host": "example.com",
        "token": "{{$shared prodToken}}",
        "secretKey" : "prodSecret"
    }
}

這樣,當(dāng)你切換不同的環(huán)境時(shí),就會(huì)啟用該環(huán)境下的變量值。

插件的簡(jiǎn)單介紹就先到這里,更多功能可以查看插件的Github 倉(cāng)庫(kù)

看到這個(gè)頗有氣質(zhì)的 logo,不來(lái)關(guān)注下嗎?

作者:1024譯站
鏈接:http://www.itdecent.cn/p/64d83c5182d0
來(lái)源:簡(jiǎn)書(shū)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 摘要 Postman 是一個(gè)接口測(cè)試和 http 請(qǐng)求的神器,非常好用。官方 github 地址: http...
    筆名輝哥閱讀 3,999評(píng)論 4 111
  • Postman 接口測(cè)試神器 更好的體驗(yàn),請(qǐng)直接打開(kāi):當(dāng)前文章。 Postman 是一個(gè)接口測(cè)試和 http 請(qǐng)求...
    IT老馬閱讀 7,172評(píng)論 4 13
  • Postman 是一個(gè)接口測(cè)試和 http 請(qǐng)求的神器,非常好用。 官方 github 地址:https://gi...
    八點(diǎn)微生活閱讀 1,244評(píng)論 1 3
  • 回首過(guò)去的七個(gè)月好像匆匆忙忙,又好像一事無(wú)成。 人生總是這樣,習(xí)慣感慨過(guò)去,又害怕未來(lái) 時(shí)常覺(jué)得自己過(guò)一天悔一天,...
    三三三思啊閱讀 181評(píng)論 0 1
  • 村里的坡地土質(zhì)并不算得太硬,花生收獲的季節(jié),人們往往用手就能直接把花生拔起來(lái)。只是偶爾有一兩顆長(zhǎng)勢(shì)不好的,才需要用...
    楓鈴木閱讀 1,968評(píng)論 23 14

友情鏈接更多精彩內(nèi)容