HTTP协议

HTTP协议,第1张

HTTP协议

目录

一、HTTP是什么

1、HTTP协议格式

2、HTTP请求(Request)

1)URL

1、标准

2、完整的URL由:

3、URL编码

4、绝对路径、相对路径

2)请求方法(method)

(1)GET方法

(2)POST方法

(3)GET和POST区别(面试题)

3)请求“报头”(header)

4)请求“正文”(body)

3、HTTP响应

1)状态码(status code)

2)响应“报头”(header)

其中重点掌握响应中Content-Type 常见的取值:

3)响应“正文”(body)

4、通过form表单构造HTTP请求

1)form发送GET请求

2)form发送POST请求


HTTP协议和Web服务器(学习阶段用的Tomcat)的使用

一、HTTP是什么 HTTP ( 全称为 " 超文本传输协议 ") 是一种应用非常广泛的 应用层协议;

HTTP协议除了 HTTP3.0 基于UDP 之外,其他都是基于TCP协议的;

(我们平时打开一个网站,就是通过HTTP协议来传输数据的;当我们在浏览器中输入一个 "网址", 此时浏览器就会给对应的服务器发送一个 HTTP 请求. 对方服务器收到这个请求之后, 经过计算处理, 就会返回一个 HTTP 响应);

1、HTTP协议格式

2、HTTP请求(Request) 1)URL 1、标准 互联网上的每个文件都有一个唯一的 URL ,它包含的信息指出文件的位置以及浏览器应该怎么处理它 . 2、完整的URL由:

协议号(http://)+ 定位主机(ip/域名 + 端口(端口可以省略))+ 路径(/index.*可以省略,写为/) +  查询字符串 + 片段标识符

3、URL编码

URL中的编码问题:由于URL中能出现的字符是有限的,所以,当出现URL不允许出现的字符时,会被URL编码。

4、绝对路径、相对路径

(1)绝对路径:从树的根节点出发,进行路径的描述(以 / 开头,表示从根出发)

(2)相对路径:相当于当前“我”所在位置(不以 / 开头,代表不是从根出发、是从当前位置出发)

假设你的网页在如下位置:D:WORKweb111.html,而图片在D:WORKwebimages111.JPG 有以下两种情况:

一,你在网页中直接以D:WORKwebimages111.JPG这个路径表示你的图片。<这个就是图片的绝对路径>  

二,你在网页中以: images111.JPG来表示你的这个图片。<这个是图片的相对路径>

 (3). 代表目前所在的目录;..代表上一层目录;/代表根目录。

2)请求方法(method)

请求的格式:

 (格式见上述协议格式左:)

(1)GET方法

 用于获取服务器上的某个资源;在浏览器中直接输入URL,此时浏览器会发出一个GET请求。

(2)POST方法

 用于提交用户输入的数据给服务器(登录界面);通过html中的form或者js的ajax构造POST请求。

(3)GET和POST区别(面试题)

3)请求“报头”(header)

header的整体的格式也是“键值对”结构;每一个键值对占一行,键与值之间使用分号分割;

常见的种类:

(1)Host:表示服务器主机的地址和端口

(2)Content-Length:表示body中的数据长度

(3)Content-Type:表示请求的body中的数据格式

(4)User-Agent(UA):表示浏览器/ *** 作系统的属性,请求浏览器说明自己的身份

(5)Referer:表示这个页面是从哪个页面跳转过来的

4)请求“正文”(body)

正文中的内容格式和header中的Content-Type密切相关。

3、HTTP响应 1)状态码(status code)

状态码表示访问一个页面的结果(成功、失败、正在访问中...)

总览:1xx  2xx  3xx  4xx  5xx

常见的状态码:

(1)200 ok :表示访问成功

(2)404 Not Found :没有找到资源

(3)505 : 服务器出现内部错误

2)响应“报头”(header)

响应报头的基本格式和请求报头的格式基本一致;

其中重点掌握响应中Content-Type 常见的取值:
  • text/...  文本类型:text/html(文本+html格式)、text/css(文本+css格式)、text/plain(文本+纯文本格式)
  • application/...  应用类型:application/javascript(js应用/文件)、application/json(结构化的数据结构)
  • image/...  图片类型:image/jpeg(jpg格式图片)、image/png(png格式图片)

 (它们后面都可以跟  ;charset=utf-8);

3)响应“正文”(body)

正文的具体格式取决于Content-Type。

4、通过form表单构造HTTP请求 1)form发送GET请求

2)form发送POST请求

修改代码的方法:将GET改为POST;

主要的区别:

GET:

POST:

  •  method从GET变成POST
  • 数据从query string 移动到了body中

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5685018.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存