繁体   English   中英

WEB API错误404-“消息”:“请求的资源不支持http方法'PUT'。”

[英]WEB API error-404 - “Message”: “The requested resource does not support http method 'PUT'.”

HTTP/1.1 405 Method Not Allowed
Cache-Control: no-cache
Pragma: no-cache
Allow: GET,POST
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/8.0
X-AspNet-Version: 4.0.30319
X-SourceFiles: =?UTF-8?B?QzpcUHJvamVjdHNcZG90TmV0XFdlYkFQSVxBZFNlcnZpY2VcQWRTZXJ2aWNlXGFwaVxpbXByZXNzaW9uXDE1?=
X-Powered-By: ASP.NET
Date: Tue, 06 May 2014 14:10:35 GMT
Content-Length: 72

{"message":"The requested resource does not support http method 'PUT'."}

我想使用POSTMAN生成PUT和DELETE请求,但是我收到了POSTMAN的以下消息。

甚至我都实现了ASP.NET网站给出的所有建议。

以下是Web API c#代码:

 // PUT: api/Students/5
    [HttpPut]
    [ResponseType(typeof(void))]
    public IHttpActionResult PutStudent(decimal Enrollment_no, Student student)
    {
        if (!ModelState.IsValid)
        {
            return BadRequest(ModelState);
        }

        if (Enrollment_no != student.Enrollment_no)
        {
            return BadRequest();
        }

        db.Entry(student).State = EntityState.Modified;

        try
        {
            db.SaveChanges();
        }
        catch (DbUpdateConcurrencyException)
        {
            if (!StudentExists(Enrollment_no))
            {
                return NotFound();
            }
            else
            {
                throw;
            }
        }

        return StatusCode(HttpStatusCode.NoContent);
    }

没有任何反应,因为尝试对Web API项目发出“ PUT”命令时仍收到405响应。

您的后端api仅允许GET和POST请求(请参阅响应标头Allow),因此要生成PUT / DELETE请求API,应添加对它的支持。

您可以通过修改ASP.NET Web API的web.config进行配置。 尝试找到以下行:
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />

替换为:
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />

请参阅此处以获取更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM