chrome浏览器刷新会触发请求两次?为什么?其他浏览器没有这个问题

chrome浏览器刷新会触发请求两次或三次?为什么?其他浏览器没有这个问题
情况出现在我用node编写的server上面,server代码如下:

var http = require('http');
var counter = 0;
var server = http.createServer(function (req, res) {
  counter++;
  console.log(counter);
  res.write('I have been accessed ' + counter + ' times');
  res.end();
}).listen(8888);

运行server后用chrome打开http://localhost:8888/访问该地址之后,刷新一次,Debug时总是连着输出两次,而用Edge浏览器测试刷新一次只触发一次,见下图:
图片描述

chrome版本:版本 55.0.2883.87 m (64-bit)

阅读 9.9k
3 个回答

看一看访问记录里有没有favicon.ico。

一般情况下都是由他引起。

这是去下载网页图标的请求。

clipboard.png

clipboard.png

两个请求。
一个访问本体,一个访问favicon.ico。

chrome 为了提升网络性能,做了很多处理:

1、DNS 预解析 DNS-Prefetch

<link rel="dns-prefetch" href="//example.com">

2、预连接 Preconnect

<link rel="preconnect" href="http://example.com">

3、预获取 Prefetching

<link rel="prefetch" href="image.png">

4、预渲染 Prerender

<link rel="prerender" href="http://example.com">

5、Preload


<link rel="preload" href="image.png">

在 chrome 的设置页面:

通过在 chrome 地址栏输入 chrome://net-internals 可以查看所有的网络事件。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏