Node.js页面刷新调用资源两次
node.js page refresh calling resources twice?
我有一个基本的node.js设置,但我想我错过了一些东西。
My main.js
:
var a = require('./another.js');
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200,
{
'Content-Type': 'text/html'
});
response.write(a.saysomething('Hi there!') + '<br />');
response.end();
}).listen(27182);
console.log('Server running at http://127.0.0.1:27182/');
My another.js
:
exports.saysomething = function (str) {
console.log('in saysomething!');
return str + ' hey there!';
}
问题是我的控制台输出in saysomething!
两次。我错过什么了吗?当我刷新页面时,我期望只有一个in saysomething!
。
你的浏览器很可能会试图获得favicon.ico除了你正在点击的url。试着在命令行上执行以下命令:curl http://127.0.0.1:27182/
还可以为request.url
添加日志记录。这将显示正在请求的url。
这是理解这个问题的另一种方式。该节点服务器将跟踪所有请求,并在浏览器上以JSON格式显示它们。然后你可以按F5,看看你正在发出的请求。
var http = require("http");
var messages = [];
http.createServer(function(request, response) {
console.log("We got a hit @ " + new Date());
messages.push(request.url);
messages.push(request.headers);
response.writeHead(200, {"Content-Type": "text/plain"});
for ( var i = 0; i < messages.length; ++i ) {
response.write("'n'n" + JSON.stringify(messages[i]));
}
response.end();
}).listen(8888);
PS:更多信息请参见此副本nodejs - http。createServer似乎调用了两次
相关文章:
- Meteor Router数据函数被调用两次
- 从MySQL数据库中获取输入数据需要两次页面刷新
- Module.start()已激发两次
- Jquery点击事件必须点击两次
- Append元素在运行两次函数后不显示
- 防止双击执行两次jQuery post请求
- 我必须点击两次才能激活任何按钮操作(离子/角度)
- 单击jQuery会激发两次
- 如何避免在树上走两次
- button.单击两次删除附加操作后不工作
- 由于$compile,Javascript(Angular)嵌套指令加载了两次
- 单击元素两次后执行操作
- AngularJs正在阻止链接被点击两次
- 为什么我的路线处理程序会触发两次
- 为什么Highchart在我的rails应用程序中加载了两次?(未捕获的Highcharts错误#16)
- 在列表中至少使用两次随机生成的nr
- 检查某个键是否按下两次
- 一次点击,两次'单击'事件已启动
- Node.js页面刷新调用资源两次
- onResourceReceived 记录每个资源两次