日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

媒體類型,也稱為 MIME 類型,標識一段數據的格式。在 HTTP 中,媒體類型描述了消息正文的格式。媒體類型由兩個字符串組成:類型和子類型。例如 –

    text/htmlimage/pngapplication/json當 HTTP 消息包含實體主體時,Content-Type 標頭指定消息主體的格式。這告訴接收者如何解析消息體的內容。

    當客戶端發送請求消息時,可以包含 Accept 標頭。 Accept 標頭告訴服務器客戶端希望從服務器獲得哪種媒體類型。

    接受:text/html,application/xhtml+xml,application/xml p>

    媒體類型決定 Web API 如何序列化和反序列化 HTTP 消息正文。 Web API 內置了對 XML、JSON、BSON 和 formurlencoded 數據的支持,您可以通過編寫媒體格式化程序來支持其他媒體類型。

    MediaTypeFormatter 是一個抽象類,JsonMediaTypeFormatter 和 XmlMediaTypeFormatter 類繼承自該抽象類從。 JsonMediaTypeFormatter 處理 JSON,XmlMediaTypeFormatter 處理 XML。媒體類型在 WebApiConfig 類的 Register 方法中指定。讓我們看一些可以使用媒體類型的示例。

    學生控制器

    示例

    using DemoWebApplication.Models;
    using DemoWebApplication.Models;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web.Http;
    namespace DemoWebApplication.Controllers{
       public class StudentController : ApiController{
          List <Student> students = new List <Student>{
             new Student{
                Id = 1,
                Name = "Mark"
             },
             new Student{
                Id = 2,
                Name = "John"
             }
          };
          public IEnumerable <Student> Get(){
             return students;
          }
       }
    }

    登錄后復制

    僅從 ASP.NET Web API 服務返回 JSON 的示例,無論
    Accept 標頭值 –

    public static class WebApiConfig{
       public static void Register(HttpConfiguration config){
          config.MapHttpAttributeRoutes();
          config.Formatters.Remove(config.Formatters.XmlFormatter);
          config.Routes.MapHttpRoute(
             name: "DefaultApi",
             routeTemplate: "api/{controller}/{id}",
             defaults: new { id = RouteParameter.Optional }
          );
       }
    }

    登錄后復制

    使用上面的代碼,我們刪除了 XmlFormatter,它強制 ASP.NET Web API 始終返回 JSON,無論客戶端請求中的 Accept 標頭值如何。當您希望服務僅支持 JSON 而不是 XML 時,請使用此技術。

    從上面的輸出中我們可以看到,無論 Accept 標頭值 application/xml 是什么,Web API 服務始終會返回 JSON。

    從 ASP.NET Web API 服務僅返回 XML 的示例,無論
    Accept 標頭值 –

    public static class WebApiConfig{
       public static void Register(HttpConfiguration config){
          config.MapHttpAttributeRoutes();
          config.Formatters.Remove(config.Formatters.JsonFormatter);
          config.Routes.MapHttpRoute(
             name: "DefaultApi",
             routeTemplate: "api/{controller}/{id}",
             defaults: new { id = RouteParameter.Optional }
          );
       }
    }

    登錄后復制

    從上面的輸出中我們可以看到,無論 Accept 標頭值 application/json 是什么,Web API 服務都返回 XML。

    在以下情況下從 ASP.NET Web API 服務返回 JSON 而不是 XML 的示例
    瀏覽器發出請求 –

    當瀏覽器向我們的 StudentController 發出請求時,響應將采用 XML 格式。這是因為瀏覽器默認以 text/html 形式發送接受標頭。

    現在讓我們看看當從瀏覽器發出請求時如何發送 JSON 響應而不是 XML。

    public static class WebApiConfig{
       public static void Register(HttpConfiguration config){
          config.MapHttpAttributeRoutes();
          config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new
          MediaTypeHeaderValue("text/html"));
          config.Routes.MapHttpRoute(
             name: "DefaultApi",
             routeTemplate: "api/{controller}/{id}",
             defaults: new { id = RouteParameter.Optional }
          );
       }
    }

    登錄后復制

    下面的輸出顯示,當從瀏覽器觸發請求時,無論接受標頭文本/html如何,響應都是 JSON 類型。

    “>

    以上就是我們如何在 Asp.Net WebAPI C# 中指定 MIME 類型?的詳細內容,更多請關注www.xfxf.net其它相關文章!

分享到:
標簽:
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定