HTTP请求 响应状态码
1、请求响应方式
get是从服务器上获取数据,post是向服务器传送数据。get 数据在地址栏中明文的形式发送, post则不是,传递的数据比get多
据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法: OPTIONS、GET、 POST 、HEAD、PUT、DELETE、TRACE和CONNECT。
2、http 响应状态码
- 1xx: Informational - Request received, continuing process
- 2xx: Success - The action was successfully received,
understood, and accepted
- 3xx: Redirection - Further action must be taken in order to
complete the request
- 4xx: Client Error - The request contains bad syntax or cannot
be fulfilled
- 5xx: Server Error - The server failed to fulfill an apparently
valid request
100-199 消息。。。用于指定客户端应相应的某些动作。
200-299 请求成功。。
300-399 重定向。。。用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。
400-499 请求错误。。。客户端的错误。
500-599 服务器错误(服务器代码等)。
200-299 请求成功。。
300-399 重定向。。。用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。
400-499 请求错误。。。客户端的错误。
500-599 服务器错误(服务器代码等)。
404 not found 网站上不存在或已删除的页面
403 资源不可用,没有权限访问
304 Not Modified 客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。
第一次请求没有If-Modified-Since信息,服务器端响应头有Last Modified 第二次请求有If-Modified-Since ,If-Modified-Since和last modified相同,服务器端返回304
相关的304缓存可用判断还有:If-Match 和 ETag ETag是根据网页内容生成一个唯一的字符序列。
还有:if-unmodified-since和 if-none-match 这两个与上面两个刚刚相反,只有没有更新的时候服务器才处理请求
相比:1、Last Modified使用修改时间验证 ETag使用内容计算值
2、任何一条可以单独完成304的相应,如果两条同时使用,需要两条都通过才可以完成304响应。
206 范围请求。。对资源的一部分进行请求。
300+ 区分
301 永久重定向(Moved Permanently) (用户的书签会更新)
302 暂时性重定向 (Found) 目标资源暂时分配到了新的url,希望客户端使用新的url访问(意味着 已经移动的资源的url还有可能改变,所以书签不会更新地址)
303 See other 目前资源的url已更新,可否用新的url访问 (明确表示客户端用get访问新地址,和302相似,但是推荐303,因为很多浏览器仍然把302视为303处理)
304 not modified(见上)(资源找到但未符合条件(请求时带的是否更改的判断头:if-match,if-modified-since,if-none-match,if-range,if-unmodified-since任一首部))
307 临时重定向(temporary redirect) 和302相似,只是不必把post改为get才去请求新的url,
作者:没错high少是我
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。