http请求(get 和 post 请求)与响应

版权声明:欢迎转载 https://blog.csdn.net/chenmoquan/article/details/36656101

一、http请求

http请求基本格式

===================================================

<request line> 请求行

<headers>  请求头(參数头)

<blank line>   空白行

[<request-body>]  请求实体(get没有  post有)

======================================

1.1 请求行:

位于请求消息的第一行

格式:请求方式 资源路径 HTTP版本号号<CRLF回车换行空格制表符>

经常使用请求方式:get和post方式

get与post差别:

(1)   在client。get方式在通过URL提交数据。数据URL中能够看到;post方式。数据放置在HTML HEADER内提交。

(2) get方式提交的数据最多仅仅能有1k。而POST则没有此限制。

(3)安全性问题。

使用 get的时候。參数会显示在地址栏上,不安全,而 post不显示,安全。假设这些数据是中文数据并且是非敏感数据,那么使用 get;假设用户输入的数据不是中文字符并且包括敏感数据,那么还是使用 post为好。

(4)幂等性    

1.2 參数头:从第二行開始到第一个空行。

作用:向server传递client的一些基本信息


二、http响应

http响应基本格式

===================================================

<status line> 状态行

<headers>  响应头

[<request-body>]  响应实体

======================================

唯一真正的差别在于第一行中用状态行取代了请求行。状态行status line)通过提供一个状态码来说明所请求的资源情况。


状态码 含义
100~199 表示成功接收请求,要求client继续提交下一次请求才干完毕整个处理过程
200~299 表示成功接收请求并已完毕整个处理过程
300~399 为完毕请求,客户需进一步细化请求。

比如,请求的资源已经移动一个新地址

400~499 client的请求有错误
500~599 server端出现错误


经常使用状态码:
200(正常):表示一切正常,返回的是正常请求结果


302/307(暂时重定向):指出被请求的文档已被暂时移动到别处,此文档的新的URL在Location响应头中给出。


304(未改动):表示客户机缓存的版本号是最新的。客户机能够继续使用它。无需到server请求。


404(找不到):server上不存在客户机所请求的资源。


500(server内部错误):server端的程序错误发生





posted @ 2019-03-20 09:05  ldxsuanfa  阅读(624)  评论(0编辑  收藏  举报