#asp.net-core #asp.net-core-2.2
#asp.net-core #asp.net-core-2.2
Вопрос:
ASP.NET Ядро 2.2 отправляет автоматические 400 ответов для действий, которые не позволяют выполнить привязку модели и проверку.
Результат выглядит так:
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "Bad Request",
"status": 400,
"traceId": "xyz:xyz"
}
Что такое traceId
и почему оно отправляется клиенту?
Комментарии:
1. Идентификатором трассировки должно быть значение
HttpContext.TraceIdentifier
, которое используется для уникальной идентификации запроса в таких вещах, как журналы. Короче говоря, вы должны иметь возможность посмотреть значениеtraceId
в своих журналах, чтобы потенциально узнать больше информации о том, почему это был «плохой запрос». Это, конечно, предполагает, что вы вообще регистрируетесь, и регистрируетесь хорошо, и это также приносит пользу только вам как разработчику, а не конечному клиенту. Но они могут поделиться этим с вами, например, если вы обращаетесь с жалобой на неисправность.
Ответ №1:
Из комментария @ ChrisPratt выше:
Идентификатором трассировки должно быть значение
HttpContext.TraceIdentifier
, которое используется для уникальной идентификации запроса в таких вещах, как журналы. Короче говоря, вы должны иметь возможность посмотреть значениеtraceId
в своих журналах, чтобы потенциально узнать больше информации о том, почему это был «плохой запрос». Это, конечно, предполагает, что вы вообще регистрируетесь, и регистрируетесь хорошо, и это также приносит пользу только вам как разработчику, а не конечному клиенту. Но они могут поделиться этим с вами, например, если вы обращаетесь с жалобой на неисправность.