一段很简单的 Node.js 代码,可是 Chrome 出现了反常现象

2016-10-27 22:53:14 +08:00
 kidlj

// happy coding :)

var connect = require('connect');
var session = require('express-session');

var app = connect()
    .use(session({ secret: 'keyboard cat' }))
    .use(function(req, res, next){
        var sess = req.session;
        if (sess.views) {
            sess.views++;
            res.setHeader('Content-Type', 'text/html');
            res.write('<p>views: ' + sess.views + '</p>');
            res.end();
        } else {
            sess.views = 1;
            res.end('Welcome to the session demo. Refresh!');
        }
    })
    .listen(3000);

就是想测试一下 express-session 这个模块,用的是官方文档的例子,用 Edge 和 Firefox 浏览器测试是正常的,输出 1 , 2 , 3 views 这样增长;可是 Chrome 浏览器( Winidows 10 , v52 )却是这样增长的: 1 , 3 , 5 , 7... views 。 禁用掉所有 Chrome 插件测试还是一样。求解惑,谢谢。

1721 次点击
所在节点    Node.js
3 条回复
xxxyyy
2016-10-27 23:05:52 +08:00
有可能是多请求了 favicon ,在代码里打印下请求 url 就知道了。
kidlj
2016-10-27 23:11:11 +08:00
@xxxyyy 嗯,是的! Chrome 每次请求会附带一次 /favicon.ico 的请求, Edge 和 Firefox 则没有。谢谢!
xxxyyy
2016-10-28 00:17:34 +08:00
@kidlj Firefox 也会请求的,不过一般只是刚打开页面时请求一次

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/315993

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX