当前位置:首页 » 网页前端 » web状态码查看教程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

web状态码查看教程

发布时间: 2022-11-25 23:36:22

㈠ 无线路由器Web认证设置教程

作为不同网络之间互相连接的枢纽,路由器系统构成了基于TCP/IP 的国际互联网络Internet 的主体脉络,也可以说,路由器构成了Internet的骨架。目前越来越多的服务场所采用了无线路由器Web认证来实现上网登录,那么,无线路由器Web认证怎么设置?对此,本文就以TP-LINK路由器为例,来为大家介绍Web认证无线路由器的设置方法

Web认证TP-LINK路由器步骤:

Web认证的设置第一步、web认证配置

举例型号。TL-ER6520G

登录路由器管理界面,点击 认证管理 >> 认证设置 >> Web认证,具体设置如下。

注意。认证方式若选择为“一键上网”,则无需第二步“新增用户”。

Web认证的设置第二步、新增用户

点击 认证管理 >> 用户管理 >> 本地用户,点击 新增,如下。

用户设置如下。

添加完成用户后,即可开始验证认证效果。

Web认证的设置第三步、连接无线上网

1.连接无线信号

无线终端(手机)连接无线网络后,跳转到认证登录页面(部分Android手机需要打开浏览器),如下。

2.登录上网

输入用户名、密码,点击 登录 后,无线终端就可以免费上网。

至此,Web认证设置完成,无线终端只需要连接Wi-Fi信号,输入对应的认证用户名密码即可上网。

如果您想查看通过认证的终端列表,可以点击 认证管理 >> 认证状态,如下。

相关阅读:路由器安全特性关键点

由于路由器是网络中比较关键的设备,针对网络存在的各种安全隐患,路由器必须具有如下的安全特性:

(1)可靠性与线路安全 可靠性要求是针对故障恢复和负载能力而提出来的。对于路由器来说,可靠性主要体现在接口故障和网络流量增大两种情况下,为此,备份是路由器不可或缺的手段之一。当主接口出现故障时,备份接口自动投入工作,保证网络的正常运行。当网络流量增大时,备份接口又可承当负载分担的任务。

(2)身份认证路由器中的身份认证主要包括访问路由器时的身份认证、对端路由器的身份认证和路由信息的身份认证。

(3)访问控制对于路由器的访问控制,需要进行口令的分级保护。有基于IP地址的访问控制和基于用户的访问控制。

(4)信息隐藏与对端通信时,不一定需要用真实身份进行通信。通过地址转换,可以做到隐藏网内地址,只以公共地址的方式访问外部网络。除了由内部网络首先发起的连接,网外用户不能通过地址转换直接访问网内资源。

(5)数据加密

为了避免因为数据窃听而造成的信息泄漏,有必要对所传输的信息进行加密,只有与之通信的对端才能对此密文进行解密。通过对路由器所发送的报文进行加密,即使在Internet上进行传输,也能保证数据的私有性、完整性以及报文内容的真实性。

(6)攻击探测和防范

路由器作为一个内部网络对外的接口设备,是攻击者进入内部网络的第一个目标。如果路由器不提供攻击检测和防范,则也是攻击者进入内部网络的一个桥梁。在路由器上提供攻击检测,可以防止一部分的攻击。

(7)安全管理

㈡ delphi中的webbrowser ,如何获取网站返回状态码

继承TWebbrowser类,网上去找 DWebBrowserEvents2 的接口声明。重写Invoke函数,在里面添加对NavigateError事件的处理。。。就能得到这个状态码了。

㈢ 如何理解HTTP响应的状态码

HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。


  1. 消息(1字头):这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。

  2. 成功(2字头):这一类型的状态码,代表请求已成功被服务器接收、理解、并接受

  3. 重定向(3字头):这类状态码代表需要客户端采取进一步的操作才能完成请求。通常,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。

  4. 请求错误(4字头):这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理。除非响应的是一个 HEAD 请求,否则服务器就应该返回一个解释当前错误状况的实体,以及这是临时的还是永久性的状况。这些状态码适用于任何请求方法。浏览器应当向用户显示任何包含在此类错误响应中的实体内容。

  5. 服务器错误(5、6字头):这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。除非这是一个HEAD 请求,否则服务器应当包含一个解释当前错误状态以及这个状况是临时的还是永久的解释信息实体。浏览器应当向用户展示任何在当前响应中被包含的实体。

    这些状态码适用于任何响应方法。

㈣ 如何才能获取到http的响应状态码

HttpWebResponse.StatusCode:

Accepted

等效于 HTTP 状态 202。Accepted 指示请求已被接受做进一步处理。
Ambiguous

等效于 HTTP 状态 300。Ambiguous 指示请求的信息有多种表示形式。默认操作是将此状态视为重定向,并遵循与此响应关联的 Location 头的内容。
如果 HttpWebRequest.AllowAutoRedirect 属性为 false,则 Ambiguous 将导致引发异常。

Ambiguous 是 MultipleChoices 的同义词。

BadGateway

等效于 HTTP 状态 502。BadGateway 指示中间代理服务器从另一代理或原始服务器接收到错误响应。
BadRequest

等效于 HTTP 状态 400。BadRequest 指示服务器未能识别请求。如果没有其他适用的错误,或者如果不知道准确的错误或错误没有自己的错误代码,则发送 BadRequest。
Conflict

等效于 HTTP 状态 409。Conflict 指示由于服务器上的冲突而未能执行请求。
Continue

等效于 HTTP 状态 100。Continue 指示客户端可能继续其请求。
Created

等效于 HTTP 状态 201。Created 指示请求导致在响应被发送前创建新资源。
ExpectationFailed

等效于 HTTP 状态 417。ExpectationFailed 指示服务器未能符合 Expect 头中给定的预期值。
Forbidden

等效于 HTTP 状态 403。Forbidden 指示服务器拒绝满足请求。
Found

等效于 HTTP 状态 302。Found 指示请求的信息位于 Location 头中指定的 URI
处。接收到此状态时的默认操作为遵循与响应关联的 Location 头。原始请求方法为 POST 时,重定向的请求将使用
GET 方法。
如果 HttpWebRequest.AllowAutoRedirect 属性为 false,则 Found 将导致引发异常。

Found 是 Redirect 的同义词。

GatewayTimeout

等效于 HTTP 状态 504。GatewayTimeout 指示中间代理服务器在等待来自另一个代理或原始服务器的响应时已超时。
Gone

等效于 HTTP 状态 410。Gone 指示请求的资源已不再可用。
HttpVersionNotSupported

等效于 HTTP 状态 505。HttpVersionNotSupported 指示服务器不支持请求的 HTTP 版本。
InternalServerError

等效于 HTTP 状态 500。InternalServerError 指示服务器上发生了一般错误。
LengthRequired

等效于 HTTP 状态 411。LengthRequired 指示缺少必需的 Content-length 头。
MethodNotAllowed

等效于 HTTP 状态 405。MethodNotAllowed 指示请求的资源上不允许请求方法(POST 或 GET)。
Moved

等效于 HTTP 状态 301。Moved 指示请求的信息已移到 Location 头中指定的 URI
处。接收到此状态时的默认操作为遵循与响应关联的 Location 头。原始请求方法为 POST 时,重定向的请求将使用
GET 方法。
Moved 是 MovedPermanently 的同义词。

MovedPermanently

等效于 HTTP 状态 301。MovedPermanently 指示请求的信息已移到 Location 头中指定的 URI 处。接收到此状态时的默认操作为遵循与响应关联的 Location 头。
MovedPermanently 是 Moved 的同义词。

MultipleChoices

等效于 HTTP 状态 300。MultipleChoices 指示请求的信息有多种表示形式。默认操作是将此状态视为重定向,并遵循与此响应关联的 Location 头的内容。
如果 HttpWebRequest.AllowAutoRedirect 属性为 false,则 MultipleChoices 将导致引发异常。

MultipleChoices 是 Ambiguous 的同义词。

NoContent

等效于 HTTP 状态 204。NoContent 指示已成功处理请求并且响应已被设定为无内容。
NonAuthoritativeInformation

等效于 HTTP 状态 203。NonAuthoritativeInformation 指示返回的元信息来自缓存副本而不是原始服务器,因此可能不正确。
NotAcceptable

等效于 HTTP 状态 406。NotAcceptable 指示客户端已用 Accept 头指示将不接受资源的任何可用表示形式。
NotFound

等效于 HTTP 状态 404。NotFound 指示请求的资源不在服务器上。
NotImplemented

等效于 HTTP 状态 501。NotImplemented 指示服务器不支持请求的函数。
NotModified

等效于 HTTP 状态 304。NotModified 指示客户端的缓存副本是最新的。未传输此资源的内容。

㈤ 怎么查看一个网站有没有做404页面

你好,很高兴为你解答

如何查看和检测网站的404页面

这个问题

如何查看(以.com为例):

这里主要看页面的返回状态,比如上图返回状态是200

一些常见的状态码为:

200- 服务器成功返回网页

404- 请求的网页不存在

503- 服务不可用


希望能帮到你!

㈥ 常见HTTP状态码汇总说明

下面是工作中我们常用的15个 HTTP状态码 ,必须 牢记

如果你想深入了解具体的HTTP状态码,请参考:HTTP状态码超详细说明

这个状态码是告诉客户端应该 继续发送请求 ,这个临时响应是用来通知客户端的,部分的请求服务器已经接受,但是客户端应继续发送求请求的剩余部分,如果请求已经完成,就忽略这个响应,而且服务器会在请求完成后向客户发送一个最终的结果

这个是 最常见 的http状态码,表示服务器已经成功接受请求,并将返回客户端所请求的最终结果。

说白了,就是 一切正常

表示服务器已经接受了请求,但是 还没有处理 ,而且这个请求最终会不会处理还不确定

服务器成功处理了请求,但 没有返回任何实体内容 ,可能会返回新的头部元信息

服务器已经 成功处理了部分GET请求

类似于FlashGet或者迅雷这类的HTTP 下载工具,都是使用此类响应实现断点续传,或者将一个大文档分解为多个下载段同时下载。

客户端请求的网页已经永久移动到新的位置,当链接发生变化时,返回301代码告诉客户端链接的变化,客户端保存新的链接,并向新的链接发出请求,已返回请求结果。

请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。

如果客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码。

简单的表达就是:服务端已经执行了GET,但文件未变化。

关于HTTP缓存内容可参考:一文了解HTTP缓存

Web服务器通过返回HTTP 400错误告诉访问者,访问者用来访问网站的程序出错,或访问请求途中遭到破坏。

访问者试图访问受限页面但未经授权时,网站返回HTTP 401错误。错误登录尝试是导致这一错误的主因。

403错误类似于401错误,不同之处在于401错误是未经授权,而403错误是禁止访问。 任何登录对403错误都不起作用。 尝试访问(被禁止的)网站目录时,就会发生403错误。

请求失败,客户端请求的资源没有找到或者是不存在。

也是比较常见的。

服务器遇到未知的错误,导致无法完成客户端当前的请求。

作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

服务器由于临时的服务器过载或者是维护,无法解决当前的请求,以上http状态码是服务器经常返回的状态代码,用户只能通过浏览器的状态了解服务器是否正常运行,一般除了错误的状态码,都不会看到服务器的状态码的。

㈦ 常用状态码

状态码的职责是当客户端向服务器发送请求时,描述返回的请求结果。借助状态码,用户可以知道服务器端是正常处理了请求还是出现了错误。

状态码的类别:

1XX Informational(信息性状态码) 接受的请求正在处理
2XX Success(成功状态码) 请求正常处理完毕
3XX Redirection(重定向状态码) 需要进行附加操作以完成请求
4XX Client Error(客户端错误状态码) 服务器无法处理请求
5XX Server Error(服务器错误状态码) 服务器处理请求出错

2XX——表明请求被正常处理了

1、200 OK:请求已正常处理。

2、204 No Content:请求处理成功,但没有任何资源可以返回给客户端,一般在只需要从客户端往服务器发送信息,而对客户端不需要发送新信息内容的情况下使用。

3、206 Partial Content:是对资源某一部分的请求,该状态码表示客户端进行了范围请求,而服务器成功执行了这部分的GET请求。响应报文中包含由Content-Range指定范围的实体内容。

3XX——表明浏览器需要执行某些特殊的处理以正确处理请求

4、301 Moved Permanently:资源的uri已更新,你也更新下你的书签引用吧。永久性重定向,请求的资源已经被分配了新的URI,以后应使用资源现在所指的URI。

5、302 Found:资源的URI已临时定位到其他位置了,姑且算你已经知道了这个情况了。临时性重定向。和301相似,但302代表的资源不是永久性移动,只是临时性性质的。换句话说,已移动的资源对应的URI将来还有可能发生改变。

6、303 See Other:资源的URI已更新,你是否能临时按新的URI访问。该状态码表示由于请求对应的资源存在着另一个URL,应使用GET方法定向获取请求的资源。303状态码和302状态码有着相同的功能,但303状态码明确表示客户端应当采用GET方法获取资源,这点与302状态码有区别。

当301,302,303响应状态码返回时,几乎所有的浏览器都会把POST改成GET,并删除请求报文内的主体,之后请求会自动再次发送。

7、304 Not Modified:资源已找到,但未符合条件请求。该状态码表示客户端发送附带条件的请求时(采用GET方法的请求报文中包含If-Match,If-Modified-Since,If-None-Match,If-Range,If-Unmodified-Since中任一首部)服务端允许请求访问资源,但因发生请求未满足条件的情况后,直接返回304.。

8、307 Temporary Redirect:临时重定向。与302有相同的含义。

4XX——表明客户端是发生错误的原因所在。

9、400 Bad Request:服务器端无法理解客户端发送的请求,请求报文中可能存在语法错误。

10、401 Unauthorized:该状态码表示发送的请求需要有通过HTTP认证(BASIC认证,DIGEST认证)的认证信息。

11、403 Forbidden:不允许访问那个资源。该状态码表明对请求资源的访问被服务器拒绝了。(权限,未授权IP等)

12、404 Not Found:服务器上没有请求的资源。路径错误等。

5XX——服务器本身发生错误

13、500 Internal Server Error:貌似内部资源出故障了。该状态码表明服务器端在执行请求时发生了错误。也有可能是web应用存在bug或某些临时故障。

14、503 Service Unavailable:抱歉,我现在正在忙着。该状态码表明服务器暂时处于超负载或正在停机维护,现在无法处理请求。

参考文献:图解HTTP【日】上野宣 着 于均良 议
转自: https://blog.csdn.net/qq_35689573/article/details/82120851

㈧ 老卢SEO教程第8节:HTTP状态码是什么意思

HTTP状态码就是在通过一些数字来判断网站链接是什么状态
一些常见的状态码为:
200 - 服务器成功返回网页 404 - 请求的网页不存在 503 - 服务不可用
所有状态解释:
1xx(临时响应)
表示临时响应并需要请求者继续执行操作的状态代码。
代码 说明
100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。
2xx (成功)
表示成功处理了请求的状态代码。
代码 说明
200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
201 (已创建) 请求成功并且服务器创建了新的资源。
202 (已接受) 服务器已接受请求,但尚未处理。
203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。
204 (无内容) 服务器成功处理了请求,但没有返回任何内容。
205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。
206 (部分内容) 服务器成功处理了部分 GET 请求。
3xx (重定向)
表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
代码 说明
300 (多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。
301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。
302 (临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
303 (查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
304 (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
305 (使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
307 (临时重定向) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
4xx(请求错误)
这些状态代码表示请求可能出错,妨碍了服务器的处理。
代码 说明
400 (错误请求) 服务器不理解请求的语法。
401 (未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
403 (禁止) 服务器拒绝请求。
404 (未找到) 服务器找不到请求的网页。
405 (方法禁用) 禁用请求中指定的方法。
406 (不接受) 无法使用请求的内容特性响应请求的网页。
407 (需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
408 (请求超时) 服务器等候请求时发生超时。
409 (冲突) 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
410 (已删除) 如果请求的资源已永久删除,服务器就会返回此响应。
411 (需要有效长度) 服务器不接受不含有效内容长度标头字段的请求。
412 (未满足前提条件) 服务器未满足请求者在请求中设置的其中一个前提条件。
413 (请求实体过大) 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
414 (请求的 URI 过长) 请求的 URI(通常为网址)过长,服务器无法处理。
415 (不支持的媒体类型) 请求的格式不受请求页面的支持。
416 (请求范围不符合要求) 如果页面无法提供请求的范围,则服务器会返回此状态代码。
417 (未满足期望值) 服务器未满足"期望"请求标头字段的要求。
5xx(服务器错误)
这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。
代码 说明
500 (服务器内部错误) 服务器遇到错误,无法完成请求。
501 (尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。
503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。
504 (网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

㈨ 如何理解HTTP响应的状态码

关于HTTP协议规范以及状态码在其中的作用,参见:读 HTTP 协议。 参考链接:http://zh.wikipedia.org/wiki/HTTP%E7%8A%B6%E6%80%81%E7%A0%81

1xx

1xx表示请求已被接受,但需要后续处理。例如:

100(Continue)

客户端应继续发送请求。

101(Switching Protocols)

需要切换协议,服务器通过的Upgrade响应头字段通知客户端。

HTML5引入的WebSocket便是这样工作的。首先客户端请求websocket所在的URL,服务器返回101,然后便建立了全双工的TCP连接。 注意Upgrade和Connection头字段属于Hop-by-hop字段,设置Websocket代理时需要继续设置这两个字段,而不是简单地转发请求。

2xx

请求已成功被服务器接收、理解、并接受。

200(OK)

请求已成功,请求所希望的响应头或数据体将随此响应返回。

201(Created)

请求已经被实现,而且有一个新的资源已经依据请求的需要而创建。在RESTFul风格的URL设计中,通常用来响应POST请求。

202(Accepted)

服务器已接受请求,但尚未处理。比如POST一个资源应当返回201,但由于性能原因未能立即创建,可以返回202。

204(No Content)

服务器成功处理了请求,但不需要返回任何实体内容,204响应禁止包含任何消息体。浏览器收到该响应后不应产生文档视图的变化。

205(Reset Content)

服务器成功处理了请求,但不需要返回任何实体内容,205响应禁止包含任何消息体。 与204不同的是,返回此状态码的响应要求请求者重置文档视图。比如用户刚刚提交一个表单,返回205后页面重置,用户可以立即填写下一个表单。

206(Partial Content)

HTTP协议允许分片传输。请求头中包含Range字段时,响应需要只返回Range指定的那一段。响应中应包含Content-Range来指示返回内容的范围。

其他

203(Non-Authoritative Information)
207(Multi-Status)

3xx

这类状态码代表需要客户端采取进一步的操作才能完成请求。通常,这些状态码用来重定向, 重定向目标在本次响应的Location头字段中指明。

301(Moved Permanently)

被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果该请求不是GET/HEAD, 浏览器通常会要求用户确认重定向。

301通常用于网站迁移时,服务器对旧的URL进行301重定向到新的URL。这样搜索引擎可以正确地更新原有的页面排名等信息。

302(Found)

请求的资源现在临时从不同的URI响应请求。除非指定了Cache-Control或Expires,否则该响应不可缓存。
如果当前请求非HEAD或GET,浏览器需取得用户确认,再进行重定向。

这很好理解,因为上下文发生了变化,比如POST请求不是幂等的。

303(See Other)

对应当前请求的响应可以在另一个URI上被找到,而且客户端应当采用GET的方式访问那个资源。 这个方法的存在主要是为了允许由脚本激活的POST请求输出重定向到一个新的资源。 303响应禁止被缓存。

303会使得浏览器直接GET那个资源,不需用户同意。这是Web应用中最常见的重定向方式。

304(Not Modified)

如果客户端发送了一个带条件的GET请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变。 304响应禁止包含消息体。

304响应也是一种缓存机制。Web服务器对静态资源文件通常会采取缓存,因此在Web开发中你可以看到大量的304响应。 服务器给出的相应中通常会包含Etag来标识资源ID,比如:

ETag: "686897696a7c876b7e"

客户端在下次访问同一URL时会设置头字段If-None-Match(这是一个请求条件):

If-None-Match: "686897696a7c876b7e"

服务器返回资源前会判断Etag是否与客户端提供的If-None-Match匹配,如果匹配则说明资源未发生改变,此时应返回304.

其他

300(Multiple Choices)
305(Use Proxy)
307(Temporary Redirect)

4xx

这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理。 除非响应的是一个HEAD请求,否则服务器就应该返回一个解释当前错误状况的实体。

400(Bad Request)

由于包含语法错误,当前请求无法被服务器理解。400通常在服务器端表单验证失败时返回。

401(Unauthorized)

当前请求需要用户验证,响应中会包含一个WWW-Authenticate字段来询问用户的授权信息。
而客户端的下次请求需要提供包含Authorization头的请求。

HTTP Basic Auth就是这样实现的。当服务器返回401时浏览器会弹出窗口:

![][basic-auth]

输入验证信息并点击确定,浏览器会根据你的输入填写Authentication头并重新发送请求。对于Basic
Auth看起来是这样的:

Authorization:Basic eWFuZ2p2bjp5YW5nanZuaGFydA==

403(Forbidden)

服务器已经理解请求,但是拒绝执行它。与401响应不同的是,身份验证并不能提供任何帮助。

403和401一样,需要在相应消息体中需要给出原因。除非是一个HEAD请求。

通常用于服务器已经知道用户的身份的情况。比如从请求的Cookie得到的Session中可以得知当前用户无权进行该操作。 通常的Web应用中,对于401的情况应当重定向至登录页面,403的情况应当直接告知错误(这属于前端Bug)。

404(Not Found)

这太常见了。就是请求所希望得到的资源未被在服务器上发现。

当通常用于当服务器不想揭示到底为何请求被拒绝时,比如应当返回500时服务器不愿透露自己的错误。

405(Method Not Allowed)

请求行中指定的请求方法不能被用于请求相应的资源。

在Web开发中通常是因为客户端和服务器的方法不一致,比如客户端通过PUT来修改一个资源,而服务器把它实现为POST方法。 开发中统一规范就好了。

413(Request Entity Too Large)

服务器拒绝处理当前请求,因为该请求提交的实体数据大小超过了服务器愿意或者能够处理的范围。

一般的服务器都会设置HTTP请求消息体的最大长度,当然这是一种阻挡攻击的手段。
例如你在使用HTTP方式来访问Git仓库,如果你在仓库中加入了大的二进制文件(通常为目标文件或多媒体文件),
在Push时服务器很可能会返回413错误。如果切换为ssh协议就不会有这样的问题了,服务器只能限制整个仓库的大小。

414(Request-URI Too Large)

当URI太长时,服务器可以返回414. 当HTTP协议并未规定URI应当有多长。这取决于浏览器和服务器的设置, 在服务器中当然你想设置多长都可以,但是浏览器是你决定不了的,而且不同的厂商在采用不同的长度限制,可以认为最短的是2K:

The limit
is in MSIE and Safari about 2KB, in Opera about 4KB and in Firefox about
8KB, (255 bytes if we count very old browsers) .

当然URI长度的这一点限制会使得HTTP GET方法的能力有限,不能传输超过2K的数据。另外因为GET方法的所有数据都体现在URI上, 对于用户是可见的。这一点不太安全。

其实HTTP GET传输数据理论上并不比POST安全更多,因为POST的Entity Body也是明文传输的。只是GET的数据用户直接可见而已。

其他

402(Payment Required)
406(Not Acceptable)
407(Proxy Authentication Required)
408(Request Time-out)
409(Conflict)
410(Gone)
411(Length Required)
412(Precondition Failed)
415(Unsupported Media Type)
416(Requested range not satisfiable)
417(Expectation Failed)

5xx

这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。 并且响应消息体中应当给出理由,除非是HEAD请求。

500(Internal Server Error)

通常是代码出错,后台Bug。一般的Web服务器通常会给出抛出异常的调用堆栈。 然而多数服务器即使在生产环境也会打出调用堆栈,这显然是不安全的。

502(Bad Gateway)

作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

如果你在用HTTP代理来翻墙,或者你配置了nginx来反向代理你的应用,你可能会常常看到它。

504(Gateway Time-out)

作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器收到响应。

注意与502的区别:502是接收到了无效响应比如Connection
Refused; 504是响应超时,通常是被墙了。

很多国外站点都会使用CDN来Serve静态文件,但我大中华墙掉了一些CDN。导致这些资源文件的请求会一直处于Pending状态直到超时。
表现为浏览器显示空白页面,长时间处于等待状态。这时在控制台看到HTML已经载入了就可以点击停止按钮了,停止载入那些资源。
页面会立即显示出来,虽然样式和交互可能有问题。

说到这里想吐槽GFW简直没有行业道德,即使不允许我们访问也返回一个错误嘛,不要让浏览器一直处于等待的状态。

其他

501(Not Implemented)
503(Service Unavailable)
505(HTTP Version not supported)

㈩ ios webvieww怎么获取状态码

[objc] @property (strong,nonatomic)UIWebView *webView; @property (strong,nonatomic)NSString *currentURL; @property (strong,nonatomic)NSString *currentTitle; @property (strong,nonatomic)NSString *currentHTML; [objc] view plainco...