<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          IDEA 接口調(diào)試神器,賊好用!

          共 3236字,需瀏覽 7分鐘

           ·

          2024-04-11 16:25

          往期熱門文章:

          
              

          1、Java內(nèi)部類有坑,100%內(nèi)存泄露!

          2、盤點Lombok的幾個騷操作

          3、被問懵了,加密后的數(shù)據(jù)如何進(jìn)行模糊查詢?

          4、中國程序員獨立開發(fā)9年、最受歡迎的開源Redis客戶端,被Redis公司收購了!

          5、我在代碼里面故意留個漏洞,違法嗎?

          作者:i聽風(fēng)逝夜
          來源:juejin.cn/post/7333525949924327474

          前言

          在后端SpringBoot開發(fā)中,都需要一個接口測試工具,從一開始的postman,到現(xiàn)在的國產(chǎn)測試工具,數(shù)不勝數(shù),而最方便的莫過于在IDEA中就可以調(diào)試,因為IDEA插件中有能力分析出當(dāng)前項目所編寫的Controller數(shù)據(jù),可以進(jìn)行統(tǒng)計,更方便我們發(fā)起http請求,不需要復(fù)制url到別的測試工具了,今天就推薦一款,名叫Cool Request,他純免費、開源。
          • 插件名稱:Cool Request
          • 作用:簡化SpringBoot后端接口調(diào)試流程。
          • 安裝方式:IDEA 插件商店中搜索Cool Request

          效果圖

          Cool Request的界面非常簡單,下面是他的主界面,可以收集項目的Controller信息。

          基本HTTP請求

          當(dāng)雙擊某個Controller時候,會跳轉(zhuǎn)到請求發(fā)送界面,在這里可以填寫參數(shù),Cool Request和同類的插件相比,在填寫Header時候,也是有提示的,而其他沒有,這一點非常方便。

          結(jié)果預(yù)覽

          Cool Request也有五種不同的響應(yīng)預(yù)覽,會自動根據(jù)響應(yīng)頭中的Content-Type跳轉(zhuǎn)到不同的預(yù)覽效果里,有json、text、image、html、xml。

          手動觸發(fā)SpringBoot中的定時器

          測試定時器時,不知道大家是怎么測試的,以前是通過單獨寫一個Controller,然后在內(nèi)部調(diào)用一下,而用了Cool Request,居然可以支持手動觸發(fā),這樣無論定時器的時間間隔是多少,都可以在Cool Request中隨心所欲的調(diào)用。

          反射調(diào)用

          這一點可能是有點抽象,不好理解,這個功能只有在特定場景下才能體會到極其方便。
          試想一下這個場景。
          1. Controller返回的信息不需要用戶信息,也就是一些全局的數(shù)據(jù)
          2. 但是Controller需要用戶登錄后才能使用,即需要附帶Token
          3. 你的項目具有攔截器,會攔截沒有登錄的用戶
          這個時候你有沒有想過,我這個Controller又沒有用到用戶信息,能不能在調(diào)試時候繞過攔截器,以前的做法可能是關(guān)閉攔截器,或者先登錄,正常拿到Token后在調(diào)用,而Cool Request的這個功能就是解決這個問題的,他可以通過反射的一系列技術(shù),繞過攔截器,將請求直接到達(dá)Controller,并返回結(jié)果。
          使用方式是在請求界面選擇reflex,然后填寫參數(shù)后發(fā)起請求。
          但是reflex也有缺點,他同時也繞過了過濾器,并且沒有辦法讓過濾器也執(zhí)行,唯一的辦法是發(fā)起正常的HTTP請求。

          強大的前后置腳本

          最方便的莫過于Cool Request提供了java的前后置腳本了,也算不上腳本了,習(xí)慣這么叫,而其他插件要不就是沒有,要不就是提供的JS腳本,對不熟悉JS的人來說,增加了學(xué)習(xí)成本,而Cool Request就非常方便了,另外在編寫代碼時,是有語法提示的,例如在腳本中修改參數(shù)的api,也不需要過多的學(xué)習(xí),幾乎是0成本。在handlerRequest方法中,有兩個參數(shù),第一個是日志輸出接口,可以使用他的println方法輸出日志,會在右面的log窗口看到,第二個參數(shù)是HTTPRequest,他有一系列方法,使用.號時候就有提示,所有的方法我們一眼就能看出是做什么的。
          更方便的是,腳本中可以調(diào)用項目的類,也支持第三方的類,比如SpringBoot內(nèi)置的一些Util工具類,都可以調(diào)用,已經(jīng)方便到極致了。
          但是也有一個小缺點,內(nèi)置的編譯器是java8的,也就是說,項目使用的java版本超過8,或者是第三方庫的版本超過java8,就無法調(diào)用了,比如項目使用了SpringBoot3,就無法調(diào)用,但是都可以在腳本中自己實現(xiàn)。
          在一些動態(tài)參數(shù)時候,非常有用,比如參數(shù)的簽名值,是通過一些參數(shù)計算出來的,或者是動態(tài)時間。

          支持多種請求體

          Cool Request支持六種請求體,也支持二進(jìn)制文件上傳。

          快速導(dǎo)入cURL參數(shù)

          如果有一個cURL參數(shù)(可能是從瀏覽器中復(fù)制過來的),那么可以快速導(dǎo)入的Cool Request里面,同時也支持將請求復(fù)制為cURL格式。

          導(dǎo)出到Apifox

          如果團(tuán)隊使用了apifox,它還可以支持導(dǎo)出到apifox里面,雖然apifox自己也有插件,但是apifox不提供目錄選擇,而Cool Request支持,當(dāng)然需要配置apifox的一些token,這點可以在插件的官網(wǎng)找到詳細(xì)的說明。

          全局搜索API

          可以通過一個api路徑來快速找到項目中的Controller位置。

          靜態(tài)資源服務(wù)器

          它內(nèi)置了一個靜態(tài)資源服務(wù)器,使用也非常簡單,選擇目錄、選擇端口、開啟即可,就可以通過瀏覽器訪問此目錄下的文件了。

          項目地址

          https://github.com/houxinlin/cool-request
             
          往期熱門文章:

          1一個現(xiàn)代化輕量級的跨平臺 Redis 桌面客戶端,支持 Mac、Windows 和 Linux
          2、能用到“退休”的 600條 Linux 命令,可以解決日常99%的問題~
          3、工作六年,看到這樣的代碼,內(nèi)心五味雜陳...
          4、拒絕寫重復(fù)代碼,試試這套開源的 SpringBoot 組件
          5、一次生產(chǎn)事故,來來回回搞了一個月,人麻了!
          6、面試官:Git 如何撤回已 Push 的代碼?問倒一大片。。。
          7、SpringBoot 如何快速過濾出一次請求的所有日志?
          8、千萬不要把 Request 傳遞到異步線程里面!有坑!
          9、別再用 offset 和 limit 分頁了,性能太差!
          10、8種專坑同事 SQL寫法,性能降低100倍,不來看看?

          瀏覽 40
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  水密桃网站 | 成人网大香蕉五月视频 | 免费一级欧美 | 黄色网久久 | 欧美成人精品三级网站 |