в .net core 2.2, имеет json по умолчанию с кодом состояния 415, например
{
"type":"https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title":"Unsupported Media Type",
"status":415,
"traceId":"8000003e-0001-f500-b63f-84710c7967bb"
}
Я не знаю, как появился этот JSON.Я следую примеру ниже, чтобы переписать json
Но я получил другой результат, он добавил раздел к оригинальному json.Это мой результат Wireshark
HTTP / 1.1 415 Неподдерживаемый тип носителя Передача-кодировка: chunked
Тип содержимого: приложение / проблема + json;charset = utf-8 Сервер:
Microsoft-IIS / 10.0 X-Powered-By: ASP.NET Дата: Пн, 06 мая 2019 г. 09:03:56 GMT
{
"type":"https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title":"Unsupported Media Type",
"status":415,
"traceId":"8000002c-0002-fb00-b63f-84710c7967bb"
}
{
"data":"this is custom message"
}
Фильтр :
public class MediaTypeResouceFilter : Attribute, IResourceFilter
{
public void OnResourceExecuting(ResourceExecutingContext context)
{
}
public void OnResourceExecuted(ResourceExecutedContext context)
{
if (context.HttpContext.Response.StatusCode == 415)
{
var jsonString = JsonConvert.SerializeObject(new { data = "this is custom message" });
byte[] data = Encoding.UTF8.GetBytes(jsonString);
context.HttpContext.Response.Body.WriteAsync(data, 0, data.Length);
}
}
}