一、GET和POST
http常用请求分为两种方式:GET和POST。
浏览器向服务器发送http请求报文格式为:请求行+请求头部+空白行+(请求数据)

注意:
1、请求数据只有在POST时才有,在请求头部有一字段,Content_Length表示请求数据的长度。GET方式没有请求数据,http请求报文以空白行结尾。
2、使用GET时数据附加在URL后面,和URL以?分开,各个变量之间以&分开。由于各个浏览器对于URL长度有限制,则GET方式传输数据量受限。
3、回车符\r和换行\n
二、请求报文示例
get方式:最下面空行一定有
GET /sn/index.php?sn=123&n=asa HTTP/1.1
Accept:*/*
Accept-Language:zh-cn
host:localhost
post方式:
POST /sn/index.php HTTP/1.1
Accept:*/*
Accept-Language:zh-cn
host:localhost
Content-Type:application/x-www-form-urlencoded
Content-Length:12
Connection:close
sn=123&n=asa
表示成char形式时,每一行后面都有回车(\r)和换行(\n),并且在请求头部结束后,有一空行为\r\n。
三、响应报文
包括状态行+响应头部+正文。状态行包括HTTP协议版本+响应状态+状态描述
示例:
HTTP/1.1 200 OK
Date:Sat,31 Dec 2005 23:59:59 GMT
Content-Type:text/html;charset=ISO-8859-1
Content-Length:122
<html>
<head>
<title>Hello World</title>
</head>
<body>
<!-- body goes here>
</body>
</html>
状态码分类如下:
1xx:指示信息–表示请求已接收,继续处理。
2xx:成功–表示请求已被成功接收、理解、接受。
3xx:重定向–要完成请求必须进行更进一步的操作。
4xx:客户端错误–请求有语法错误或请求无法实现。
5xx:服务器端错误–服务器未能实现合法的请求。
参考链接
https://www.cnblogs.com/biyeymyhjob/archive/2012/07/28/2612910.html

本文详细介绍了HTTP中的GET和POST请求方式,强调了GET与POST的区别,如GET将数据附加在URL后,POST则在请求数据中携带。同时,解析了HTTP请求报文的结构,包括请求行、请求头部、请求数据,以及POST请求中Content-Length字段的作用。此外,还阐述了响应报文的构成,包含状态行、响应头部和正文,并列举了常见的HTTP状态码及其含义。
1716

被折叠的 条评论
为什么被折叠?



