1

我在使用 PdfKit 时遇到了一种奇怪的行为。我正在使用 Nodejs 和 Express。当我调用生成 PDF 的路线时,路线本身被调用了两次,我不明白为什么。

下面是重新创建它的最小代码:

var express = require('express'),
    app = express();

app.get('/', function (req, res) {
    console.log('Route called with referer', req.headers.referer);

    var PdfDocument = require('pdfkit'),
        doc = new PdfDocument();

    doc.pipe(res);
    doc.addPage();
    doc.end();
});

app.listen(7373, function () {
    console.log('started');
});

在终端中,我有这些日志,从浏览器只刷新一次页面:

node tmp/server.js
started
Route called with referer undefined
Route called with referer http://127.0.0.1:7373/

任何人都知道为什么该路线会自动再调用一次?

4

1 回答 1

0

好的,经过一番分析,我发现是浏览器的 PDF 查看器启动了第二次调用。使用wgetorcurl时,我只看到一个呼叫和一个日志。所以请注意,从浏览器显示页面时,代码会被解析两次。

于 2016-08-15T09:39:41.477 回答