2017-12-20 1 views
0

모델 바인더가 ASP.Net Core에서 HTTP 요청의 본문 부분을 올바르게 바인딩하도록하려면 [FromBody] 특성을 사용해야합니다.ASP.Net 핵심 공급 업체별 MIME 형식 HTTP POST

public JsonResult PostContent([FromBody] Content content) 
{ 
    ...... 
} 

미디어 유형이 application/json 인 경우 효과적입니다. 그러나 Accept 헤더에 특정 공급 업체 (예 : application/vnd+mycompany+json) 미디어 유형을 사용하려면 HTTP POST에서이를 전달하면 415 Unsupported Media Type이 표시됩니다.

내 질문은 어떻게 ASP.Net 핵심 공급 업체 특정 미디어 종류를 지원합니까?

+1

Startup.cs합니다. https://docs.microsoft.com/en-us/aspnet/core/mvc/advanced/custom-formatters – Nkosi

답변

0

이렇게 해보았습니다.

워드 프로세서에서 언급 한 바와 같이 확인 사용자 정의 포맷터

public void ConfigureServices(IServiceCollection services) 
{ 
    services.AddTransient<IApiInfoService, ApiInfoService>(); 
    services.AddTransient<IApiVersion, ApiVersion>(); 
    services.AddTransient<IContentService, ContentService>(); 
    services.AddTransient<IIdGenerator, GuidIdGenerator>(); 

    // Add framework services. 
    services.AddMvc(
     mvcConfig => { 
      mvcConfig.InputFormatters.OfType<JsonInputFormatter>().First().SupportedMediaTypes.Add(
       MediaTypeHeaderValue.Parse(ContentTypes.VENDOR_MIME_TYPE) 
      ); 
     } 
    ); 
} 
관련 문제