javascript - Nodejs http请求console.log函数打印两次

标签 javascript node.js

每当我使用node.js向服务器发出http请求时,http请求函数内的console.logs都会输出两次。我使用以下代码设置了一个服务器,并在 firefox 上使用 localhost:8888 发出请求(localhost:8888):

var http = require('http');
var url = require('url');
function onRequest(request, response) {
    var pathname = url.parse(request.url, true).pathname;
    console.log("Your url pathname is " + pathname);
    response.write("Did you get your response?");
}
var new_server = http.createServer(onRequest).listen(8888);

控制台打印:

Your url pathname is /
Your url pathname is /favicon.ico

我的问题是:

  1. 为什么请求发送了两次?
  2. 尽管我在请求网址中的套接字号后面没有指定任何内容,但为什么第二个请求上的路径名是 favicon.ico?
  3. 有什么办法可以解决这两个问题吗?

谢谢。

最佳答案

显然,请求没有发送两次,而是两个请求。

这是浏览器请求图标。这就是浏览器所做的事情。

关于javascript - Nodejs http请求console.log函数打印两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25410139/

相关文章:

javascript - 在 Node.js 中将 token 传递给另一个请求

javascript - 通过 JavaScript Electron 将脚本添加到 HTML 文件

javascript - 用 let 重新分配 javascript

javascript - 如何将 VueJS 与 Zurb Panini 一起使用?

javascript - 如何安全地转义 bigquery Node 插入的用户输入?可以在 bigquery.insert Node 库上使用参数化查询吗?

javascript - 如何测试 javascript 方法是否创建对象并调用该对象上的方法

javascript - jslint.js 下载链接

Javascript按位置用不同的字符串替换相同的项目

javascript - 无法使 AJAX 调用或 session 正常运行

node.js - Nodejs mongodb async.Each 完成