Ajax、XML初识与HTTP协议

AJAX 简介

AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML
通过 AJAX 可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据
AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。

例如:
在这里插入图片描述
此处的关联词,页面没有刷新就可以出现,此处就使用了Ajax技术

在这里插入图片描述
此处会将数据传给服务器进行比对,然后返回结果。这里使用到了Ajax技术。

在翻阅一些网站,或者app的时候,在翻到最底下的时候会出现新的内容,这些内容是在网站没有刷新的情况下补充添加的。此处也使用到了Ajax技术。

Ajax的优点与缺点

AJAX 的优点:

  1. 可以无需刷新页面而与服务器端进行通信。
  2. 允许你根据用户事件来更新部分页面内容。

AJAX 的缺点:

  1. 没有浏览历史,不能回退
  2. 存在跨域问题(同源)
  3. SEO (搜索引擎优化)不友好

XML的介绍

XML :可扩展标记语言。
XML 被设计用来传输和存储数据
XML 和 HTML 类似,不同的是 HTML 中都是预定义标签,而 XML 中没有预定义标签,全都是自定义标签,用来表示一些数据。

例如:

比如说我有一个学生数据:
name = "孙悟空" ; age = 18 ; gender= "男" ;

用 XML 表示:
<student>
    <name>孙悟空</name>
	<age>18</age>
	<gender></gender>
</student>

但是现在已经被json取代了,其更加的简洁。

JSON 表示:
{"name":"孙悟空","age":18,"gender":"男"}

HTTP协议请求报文与响应文本结构

HTTP

HTTP(hypertext transport protocol)协议『超文本传输协议』,协议详细规定了浏览器和万维网服务器之间互相通信的规则。约定, 规则

请求报文

请求报文包括四个部分:

  • 请求行
  • 请求头
  • 空行
  • 请求体

请求行:包括三部分

  • 请求类型:GET,POST等
  • URL路径
  • HTTP协议的版本

请求头:例如
Host: baidu.com
Cookie: name=abc
Content-type: application/x-www-form-urlencoded
User-Agent: chrome 83

注意其格式都是类似于键值对这种形式

空行:必须要有!

请求体:其中的内容可有可无
如果是GET请求,那么请求体是空的
如果是POST请求,那么请求体可以不为空

例如:username=admin&password=admin…

响应报文

也由四个部分组成:

  • 响应行
  • 响应头
  • 空行
  • 响应体

响应行由三个部分组成:

  • HTTP协议版本 例如:HTTP/1.1
  • 响应状态码 例如:200(成功),404(找不到),403(被禁止),401(未授权),500(内部错误)
  • 响应状态字符串 例如:OK (与响应状态码相对应,无需单独设置 )

响应头:
Content-Type: text/html;charset=utf-8
Content-length: 2048
Content-encoding: gzip

空行:必须要有!

响应体:
例如:

       <html>
            <head>
            </head>
            <body>
                <h1>NEFU</h1>
            </body>
        </html>

Chrome网络控制台查看通信报文

GET请求的情况

在这里插入图片描述
Headers里面包含了请求头,响应头,查询字符串参数(对请求行中url参数的解析)
因为是GET请求,所以请求体的内容是空的

在这里插入图片描述
而响应体在response那一栏中
Preview是对响应体的预览,是对响应体内容解析的查看页面。

POST请求的情况

在这里插入图片描述
相对于GET请求的情况,此处多了一个Form Data这里面装着原始的请求体内容

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十八岁讨厌编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值