浏览器的通信能力

浏览器的通信能力

用户代理 user agent

通常在浏览器控制台可以看到,有一个用户代理样式表,我们认为他是浏览器提供的默认CSS
请添加图片描述
那为什么称之为用户代理呢?因为浏览器帮助我们自动发送请求,并自动对响应的内容进行解释,把响应回来的超文本解释成为用户友好的界面

浏览器什么时候会自动发起请求?

  1. 地址栏输入地址,按下回车
  2. 点击链接 GET请求
  3. form表单 POST请求
  4. 当解析HTML遇到<link> 、<img>、 <script> 、<video> 、<audio>等,浏览器拿到对应地址,发送GET请求
  5. 用户点击刷新

直接发送HTTP请求(右边是响应内容):
请添加图片描述
form表单发送相同请求的方式:
请添加图片描述
点击提交按钮或者在输入框中按回车,都可以发送请求。

GET请求和POST请求的区别:
  1. 浏览器发送GET请求不会带请求体(这是一个服务器和浏览器的约定,不是说不能放),(那GET请求要传递数据,可以把数据放在请求头、或者path里,通常放在query里,易于分享)
  2. GET传递的信息有限,适合传递少量数据,POST请求传递的信息没有限制,适合传递大量信息。
  3. GET请求只能传递ASCII码数据,遇到非ASCII码数据(汉字等)会进行编码,POST请求无该限制
  4. POST请求不会被保存在浏览器的历史记录中
  5. 刷新页面,如果页面是POST请求,则会提示用户是否重新提交,如果是GET请求,不会有提示

浏览器自动响应:

  1. 识别响应码,出现一些特殊响应码时,浏览器会自动进行处理,如301、302
  2. 根据响应结果作出不同处理:浏览器自动分析响应头中的content-type,根据不同值进行不同处理,如:text/lain:普通纯文本,原封不动显示;text/html:将响应体作为html页面进行渲染,text/javascript或者application/javascript:使用JS执行引擎解析;text/css:作为CSS样式解析,等等。
    基本流程如下:
    请添加图片描述

AJAX

AJAX就是在web应用程序中异步向服务器发送请求
他的实现方式有两种:HMLHttpRequest(XHR)Fetch
这两者的区别如下:
请添加图片描述

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值