dit*_*lav 3 pdf encoding utf-8 node.js
所以我试图用我的脚本从网站下载一个pdf文件,但问题是文件在这个过程中被破坏了,我很确定这是因为使用了错误的编码.
我正在使用请求lib下载文件,我已设置Content-type为application-pdf
我的代码非常简单:4
var fs = require('fs');
var request = require("request");
request({uri: 'xxxxxxxxxxxxxx.pdf', headers: { 'Content-type' : 'applcation/pdf' }} , function (error, response, body) {
if (!error && response.statusCode == 200) {
fs.writeFileSync("10111.pdf", body);
}
})
Run Code Online (Sandbox Code Playgroud)
我需要在哪里指定用于此工作的编码?
我尝试通过正常保存打开pdf,SublimeText3 encodinghelper说它在Windows中,而我下载的是utf8.
我已经浏览了nodejs缓冲区和fs文件,并且它们不支持像windows-asd那样的编码,只有像'utf8'和'binary'这样的通用编码.
我应该使用不同的方法来获取文件吗?
我知道它已经很晚了但我今天看到了你的问题所以我正在回答它,以便其他人可以从中获得帮助.您可以在尝试编写文件时添加编码ie-:
fs.writeFileSync("10111.pdf", body,'binary');
Run Code Online (Sandbox Code Playgroud)
正如我在这里将编码格式设置为二进制,如果您尝试下载可以将编码设置为null的pdf,则可以根据您的要求使用正确的编码格式.
希望这会有所帮助
| 归档时间: |
|
| 查看次数: |
12264 次 |
| 最近记录: |