Asp.net web api 从Asp.NETWebAPI控制器返回HTTP 403子状态

Asp.net web api 从Asp.NETWebAPI控制器返回HTTP 403子状态,asp.net-web-api,http-status-code-403,Asp.net Web Api,Http Status Code 403,当用户没有执行某些任务的权限时,我希望从Asp.Net WebApi控制器返回Http 403错误 但是,我想在此使用一个示例来提供有关错误的更多详细信息,以及错误消息 目前,我得到的是 HTTP/1.1 403 Read access forbidden 但我想看到的是 HTTP/1.1 403.2 Read access forbidden 我当前使用的代码: [HttpGet] public EnrollmentDetail Details(int id) {

当用户没有执行某些任务的权限时,我希望从Asp.Net WebApi控制器返回Http 403错误

但是,我想在此使用一个示例来提供有关错误的更多详细信息,以及错误消息

目前,我得到的是

HTTP/1.1 403 Read access forbidden
但我想看到的是

HTTP/1.1 403.2 Read access forbidden
我当前使用的代码:

    [HttpGet]
    public EnrollmentDetail Details(int id)
    {
        var enrollmentDetail = _context.GetEnrollmentDetail(id);

        if (!enrollmentDetail.R)
        {
            throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden)
                {
                    ReasonPhrase = "Read access forbidden"
                });
        }

        return enrollmentDetail;
    }

我在任何地方都找不到有关如何将这些子状态添加到响应的任何信息。有什么方法可以通过内置类来实现吗?如果没有,有没有办法编写一个自定义的
HttpException
,它可以为我做到这一点?

这是因为子状态不是HTTP规范的一部分,不应该使用。如果您想发送有关遇到问题的更多详细信息,请查看

我找不到确切答案,但我认为这两个链接应该会有所帮助。