0
每次使用Fiddler發出POST請求時,都會引發UnsupportedMediaTypeException。我錯過了什麼嗎?406在C#Web API中調用POST方法時的HTTP響應
控制器:
[Route("api/contacts")]
public IHttpActionResult Post([FromBody]ContactDTO contact)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
//Other operations
return Created(contact);
}
WebApiConfig.cs
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(
new MediaTypeHeaderValue("application/json"));
var json = config.Formatters.JsonFormatter;
json.SerializerSettings.Formatting = Newtonsoft.Json.Formatting.Indented;
json.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
}
首先嚐試使用默認設置並查看它是否仍然有效。如果它試圖縮小哪一行是罪魁禍首。我懷疑清除支持媒體類型是問題的根源。 – Nkosi
你在動作上使用[HttpPostAttribute]嗎? – Nkosi
你發送了什麼請求?顯示您的完整請求。 –