我使用節點/快遞,並試圖按照我在這裏看到的答案:Display Pdf in browser using express js如何找到nodejs中項目的路徑?
但我不知道如何找到我的PDF文件的路徑。它位於項目文件夾的主目錄,一個文件夾,名爲內「的文件,」所以我想的路徑也只是
./file/myPDF.pdf
,但我只是得到一個「無法加載PDF文檔」不管路徑我用。
我使用節點/快遞,並試圖按照我在這裏看到的答案:Display Pdf in browser using express js如何找到nodejs中項目的路徑?
但我不知道如何找到我的PDF文件的路徑。它位於項目文件夾的主目錄,一個文件夾,名爲內「的文件,」所以我想的路徑也只是
./file/myPDF.pdf
,但我只是得到一個「無法加載PDF文檔」不管路徑我用。
__dirname
解決了node.js中路徑問題它始終是當前正在執行的腳本所在的目錄。
下面是完整的工作代碼:
- files
- my_pdf_file.pdf
app.js
var express = require('express'),
fs = require('fs'),
app = express();
app.get('/', function (req, res) {
var filePath = "/files/my_pdf_file.pdf";
fs.readFile(__dirname + filePath , function (err,data){
res.contentType("application/pdf");
res.send(data);
});
});
app.listen(3000, function(){
console.log('Listening on 3000');
});
完整文件,並運行項目:
克隆節點騙pdf_browser,運行node app
其次是npm install express
。
快樂幫助!
使用相對路徑是不是一個好主意,提供的NodeJS a "global" to build an absolute path:
var myPdf = require('path').normalize(__dirname + '/file/myPDF.pdf');