中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET Core中WebApi如何返回統一格式參數

發布時間:2021-08-17 11:11:29 來源:億速云 閱讀:137 作者:小新 欄目:開發技術

小編給大家分享一下ASP.NET Core中WebApi如何返回統一格式參數,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

業務場景:

業務需求要求,需要對 WebApi 接口服務統一返回參數,也就是把實際的結果用一定的格式包裹起來,比如下面格式:

{
  "response":{
    "code":200,
    "msg":"Remote service error",
    "result":""
  }
}

具體實現:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;

public class WebApiResultMiddleware : ActionFilterAttribute
{
  public override void OnResultExecuting(ResultExecutingContext context)
  {
    //根據實際需求進行具體實現
    if (context.Result is ObjectResult)
    {
      var objectResult = context.Result as ObjectResult;
      if (objectResult.Value == null)
      {
        context.Result = new ObjectResult(new { code = 404, sub_msg = "未找到資源", msg = "" });
      }
      else
      {
        context.Result = new ObjectResult(new { code = 200, msg = "", result = objectResult.Value });
      }
    }
    else if (context.Result is EmptyResult)
    {
      context.Result = new ObjectResult(new { code = 404, sub_msg = "未找到資源", msg = "" });
    }
    else if (context.Result is ContentResult)
    {
      context.Result = new ObjectResult(new { code = 200, msg = "", result= (context.Result as ContentResult).Content });
    }
    else if (context.Result is StatusCodeResult)
    {
      context.Result = new ObjectResult(new { code = (context.Result as StatusCodeResult).StatusCode, sub_msg = "", msg = "" });
    }
  }
}

Startup添加對應配置:

public void ConfigureServices(IServiceCollection services)
{
  services.AddMvc(options =>
  {
    options.Filters.Add(typeof(WebApiResultMiddleware));
    options.RespectBrowserAcceptHeader = true;
  });
}

看完了這篇文章,相信你對“ASP.NET Core中WebApi如何返回統一格式參數”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大连市| 简阳市| 景洪市| 应用必备| 德阳市| 新蔡县| 宜兰市| 灵台县| 富锦市| 株洲市| 大英县| 巧家县| 阳朔县| 洛阳市| 汶上县| 呼和浩特市| 衢州市| 呼伦贝尔市| 石泉县| 宁陵县| 东城区| 东乡族自治县| 华宁县| 辉南县| 龙里县| 昆山市| 江北区| 盐池县| 安福县| 丽江市| 海城市| 浦城县| 习水县| 南陵县| 会同县| 华坪县| 仁布县| 江口县| 彭阳县| 大邑县| 二连浩特市|