使用 Postman 調試 ASP.NET Core 開發的 API

使用 ASP.NET Core 開發簡單的後臺 API 還是非常容易的。涉及到 GET 請求的調試我們可以用瀏覽器簡單搞定,那麼 POST/PUT/DELETE 這樣的請求呢?

本文將使用 Postman 來調試這些請求。


簡單的 ASP.NET Core 程序

如果你還不清楚如何編寫一個 ASP.NET Core 程序,可以閱讀 win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序 學習做一個最簡單的版本。

我們的重點不是寫一個 ASP.NET Core 程序,所以我只貼出最簡單的路由地址的處理。

using Microsoft.AspNetCore.Mvc;
using Walterlv.WebApi.Rssman.Models;

namespace Walterlv.WebApi.Rssman.Controllers
{
    [Route("api/[controller]")]
    [ApiController]
    public class RssController : ControllerBase
    {
        private readonly RssFeedContext _context;

        public RssController(RssFeedContext context)
        {
        }

        // GET: api/Rss
        [HttpGet]
        public ActionResult<List<RssFeedItem>> Get()
        {
            // 省略實現。
        }

        // GET: api/Rss/5
        [HttpGet("{id}", Name = "Get")]
        public ActionResult<RssFeedItem> Get(long id)
        {
            // 省略實現。
        }

        // POST: api/Rss
        [HttpPost]
        public IActionResult Post([FromBody] RssFeedItem item)
        {
            // 省略實現。
        }

        // PUT: api/Rss/5
        [HttpPut("{id}")]
        public IActionResult Put(long id, [FromBody] RssFeedItem item)
        {
            // 省略實現。
        }

        // DELETE: api/ApiWithActions/5
        [HttpDelete("{id}")]
        public IActionResult Delete(long id)
        {
            // 省略實現。
        }
    }
}

以上代碼是省略了所有實現的,完整的實現可以看這裏:RssController。相關數據模型類的定義可以看這裏:

以上程序如果在 Visual Studio 裏進行調試,可以在本地搭建一個可訪問的 Url。比如: https://localhost:44395/ 。

模擬 GET 請求

我們通過瀏覽器就可以模擬 GET 請求,比如我們在 Chrome / Microsoft Edge / Firefox 中訪問 https://localhost:44395/api/rss 會在瀏覽器中顯示結果的 json 字符串:

[
    {
        "id": 1,
        "name": "walterlv",
        "feedUrl": "https://blog.walterlv.com/feed.xml",
        "siteUrl": "https://blog.walterlv.com/"
    },
    {
        "id": 2,
        "name": "lindexi",
        "feedUrl": "https://blog.lindexi.com/feed.xml",
        "siteUrl": "https://blog.lindexi.com/"
    }
]

Chrome 瀏覽器訪問
▲ Chrome 瀏覽器訪問

當然,實際上瀏覽器訪問時是沒有這些空白字符的,這樣可以節省帶寬。特別的,Internet Explorer 在訪問時會提示保存 rss.json 文件

IE 瀏覽器訪問
▲ IE 瀏覽器訪問

很明顯不用去管被時代淘汰的 IE 瀏覽器。

下載安裝 Postman

Postman 的下載地址在這裏 https://www.getpostman.com/apps

選擇你需要的平臺
▲ 選擇你需要的平臺

Postman 的安裝是極簡的,沒有任何設置。當啓動後,註冊或登錄你的個人賬號,然後填寫一些個性化設置即可。

如果你是本地 https 的調試,記得在 Postman 裏關掉 SSL 證書驗證,不然這種自己簽署的證書是無法成功完成請求的。

在這裏插入圖片描述
▲ 關閉 SSL 證書驗證

模擬 POST 請求

在 Postman 的主界面,創建一個 HTTP POST 請求只需要幾個小步驟:

創建一個 POST 請求
▲ 創建一個 POST 請求

“Send” 按鈕點擊後,我們便可以在右側看到此請求的響應:

請求響應
▲ 請求響應

注意,如果你看到的是下面這樣的響應界面,記得回到前面的步驟去關閉 SSL 證書驗證。

無法獲取響應
▲ 無法獲取響應

如果你在 Visual Studio 中打了斷點,那麼現在應該已經進入了斷點了:

在這裏插入圖片描述
▲ Visual Studio 中進入斷點

於是你就能調試 POST 請求了。

模擬 PUT / PATCH / DELETE / … 請求

同樣的,你也可以用 Postman 模擬其他種類的 HTTP 請求。

模擬其他請求
▲ 模擬其他請求

關於本文調試的 ASP.NET 程序 Rssman

Rssman 是用來管理 RSS 訂閱的 ASP.NET 程序,目前正在開發中。


我的博客會首發於 https://blog.walterlv.com/,而 CSDN 會從其中精選發佈,但是一旦發佈了就很少更新。

如果在博客看到有任何不懂的內容,歡迎交流。我搭建了 dotnet 職業技術學院 歡迎大家加入。

知識共享許可協議

本作品採用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可。歡迎轉載、使用、重新發布,但務必保留文章署名呂毅(包含鏈接:https://walterlv.blog.csdn.net/),不得用於商業目的,基於本文修改後的作品務必以相同的許可發佈。如有任何疑問,請與我聯繫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章