http请求405错误方法不被允许的解决 (Method not allowed)

所属分类: 网络编程 / 其它综合 阅读数: 604
收藏 0 赞 0 分享

由于自己疏忽,导致请求错误405,然后前端数据传输没错,百度大都说跟post提交方式有关,改成get还是报错,检查才知道,controller中忘记写@requestMapping("/XXX"),hahhahah 被自己粗心蠢哭了,,,从而导致没有没有方法被加载到,方法不予许,下面是相关405错误的解释

HTTP 协议定义一些方法,以指明为获取客户端(如您的浏览器或我们的 CheckUpDown 机器人)所指定的具体网址资源而需要在 Web 服务器上执行的动作。则这些方法如下:

  1. OPTIONS( 选项 ) :查找适用于一个特定网址资源的通讯选择。 在不需执行具体的涉及数据传输的动作情况下, 允许客户端来确定与资源相关的选项以及 / 或者要求, 或是一个服务器的性能。
  2. GET( 获取 ) :检索由网址资源所确定的信息,如获取一个特定的网页或图片。这是最常用的方法。
  3. HEAD( 头 ) :除了服务器只反馈标头信息而不是网址资源所确定的信息本身外, 基本同于 GET ( 获取 ) 。 可用于获取一个请求所要求的响应实体的元信息 ( metainformation) ,而不需传输响应实体本身。 经常用来测试超文本链接的有效性, 可达性, 和最近的修改。
  4. POST( 投寄 ) :将数据提交到 Web 服务器,如 1 )在电子公告板,新闻组中,或向 邮件名单发送信息, 2 )提供输入数据 - 通常由一个公共网关接口(CGI) 表, 到 一个数据处理进程, 3 )直接将记录添加到一个数据库中。
  5. PUT( 放置 ) :将一个具体网址的数据设置( 置入 / 替换)成客户提交的新数据。例如,将新的网页上载给服务器。
  6. DELETE( 删除 ) :删除与网址资源相关的数据。例如,删除网页。
  7. TRACE( 跟踪 ) :运行请求信息的一个远程应用层回送。 实际上是一个 'ping', 用以测试 Web 服务器正在从客户端接收什么数据。
  8. CONNECT( 连接 ) :保留以便通过代理服务器和隧道一起使用(如 SSL )。这种方法只在 HTTP 1.1 版中定义, 而在先前的 1.0 版中却没有。

所有 Web 服务器都可以被设置为允许或不允许任何方法。例如,如果一个 Web 服务器是 ' 只读 ' (客户端不能修改 Web 服务器上的网址资源) ,那么它可以被设置为不允许 PUT 和 DELETE 方法。 同样,如果没有用户输入(所有的网页都是静态的) , 那么 POST 方法可设置为不允许。 所以, 405 错误可能会因 Web 服务器没有被设置为从客户端接受输入数据而出现。 另外, 如果客户端对请求中指明的具体网址资源没有足够的权力, 该错误也会出现。

HTTP 循环中的 405 错误

任何客户端 ( 例如您的浏览器或我们的 CheckUpDown 机器人 ) ,都需要通过以下循环:

  • 从您站点的 IP 名称 ( 即您站点的网址-URL, 不带起始的 ‘http://') 获得一个 IP 地址。这个对应关系 ( 即由 IP 名称向 IP 地址转换的对应关系 ) 由域名服务器 (DNSs) 提供。
  • 打开一个 IP 套接字 (socket) 连接到该 IP 地址。
  • 通过该套接字写 HTTP 数据流。
  • 从您的Web服务器接受响应的 HTTP 数据流。该数据流包括状态编码, 其值取决于 HTTP 协议 。 解析该数据流得到 状态编码和其他有用信息。

该错误在以上所述的最后一步生成,即当客户端收到 HTTP 状态编码并识别其为 ‘405' 时

解决 405 错误 – 一般方法

405 错误经常和 POST 方法同时出现。 您可能在您的网站上尝试引入某种输入表格,但并非所有的互联网服务供应商 (ISPs) 都 允许处理该表格所需的 POST 方法。

所有 405 错误都可以追综到 Web 服务器设置和控制访问网站内容的安全管理,因此您的 ISP 应该很容易地予以解释。

解决 405 错误 – CheckUpDown

这个错误应该永远不会发生在您的 CheckUpDown 帐户上。 如果出现了, 则通常表明我方系统或是管理您网站的 Web 服务器系统在编程上有缺陷。 我们只使用 GET 方法,所有 Web 服务器都应允许(否则, 任何人无论如何都不能看到您的网站) 。

只要您遇到 405 错误,就请与我们联系(最好通过电子邮件) - 您自己无法解决此类错误。我们必须和您的 ISP 及 Web 服务器软件供应商联络,以确认产生该错误的确切原因。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

科学知识:时间复杂度计算方法

这篇文章主要介绍了科学知识:时间复杂度计算方法,本文介绍了问题的定义、时间复杂度计算步骤、时间复杂度计算规则等内容,需要的朋友可以参考下
收藏 0 赞 0 分享

科学知识:理解socket

这篇文章主要介绍了科学知识:理解socket,本文试图用简洁的语言说清楚socket的相关知识,以便理解,需要的朋友可以参考下
收藏 0 赞 0 分享

科学知识:同步、异步、阻塞和非阻塞区别

这篇文章主要介绍了科学知识:同步、异步、阻塞和非阻塞区别,本文分别讲解了这些概念,需要的朋友可以参考下
收藏 0 赞 0 分享

24种编程语言的Hello World程序

这篇文章主要介绍了24种编程语言的Hello World程序,包括熟知的Java、C语言、C++、C#、Ruby、Python、PHP等编程语言,需要的朋友可以参考下
收藏 0 赞 0 分享

科普:多线程与异步的区别

这篇文章主要介绍了科普:多线程与异步的区别,本文讲解了多线程和异步操作的异同、异步操作的本质、线程的本质、异步操作的优缺点、多线程的优缺点等内容,需要的朋友可以参考下
收藏 0 赞 0 分享

网址(URL)支持的最大长度是多少?最大支持多少个字符?

这篇文章主要介绍了网址(URL)支持的最大长度是多少?最大支持多少个字符?本文总结了IIS、apache服务器及浏览器软件Internet Explorer、Firefox、Opera、chrome等主流的浏览器软件支持情况,需要的朋友可以参考下
收藏 0 赞 0 分享

RPC、RMI、SOAP的区别详解

这篇文章主要介绍了RPC、RMI、SOAP的区别详解,本文还同时讲解了RPC、SOAP、WSDL的关系,需要的朋友可以参考下
收藏 0 赞 0 分享

一张图告诉你计算机编程语言的发展历史

这篇文章主要介绍了一张图告诉你计算机编程语言的发展历史,也可看作是计算机的发展历史大事记,需要的朋友可以参考下
收藏 0 赞 0 分享

Flyway数据库版本控制的教程详解

这篇文章主要介绍了Flyway数据库版本控制的教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

github版本库使用详细图文教程(命令行及图形界面版)

今天我们就来学习github的使用,我们将用它来管理我们的代码,你会发现它的好处的,当然是要在本系列教程全部完成之后,所以请紧跟站长的步伐,今天是第一天,我们来学习如何在git上建立自己的版本仓库,并将代码上传到仓库中
收藏 0 赞 0 分享
查看更多