gpt4 book ai didi

node.js - Express + Node : file downloaded through response. download() 与原始文件相比大小不同

转载 作者:太空宇宙 更新时间:2023-11-04 02:00:58 26 4
gpt4 key购买 nike

我正在使用 Node + Express 开发一个简单的网络服务器。让我解释一下我遇到奇怪问题的部分。

使用外部脚本(dropbearkey)我生成一个 key 对,生成的私钥存储在服务器的文件系统上。目的是发送此私钥作为对客户端请求的响应。 Client是一个使用Electron开发的应用程序。

为此,我使用以下内容:

response.download(filepath);
上面一行中的

filepath 是服务器文件系统上生成的私钥的路径。这是一个二进制文件。

问题是,客户端下载的文件比原始文件大。知道为什么吗?我在这里做错了什么吗?

提前致谢!

Original File (on Server)

Downloaded File (on Client)

最佳答案

原始文件(错误地)被视为 UTF-8 编码文件。

我可以像这样从原始文件创建下载的文件:

const fs = require('fs');
process.stdout.write( fs.readFileSync('original_file').toString() );

检查客户端以确保它不会将数据解释为字符串,而是解释为(二进制)缓冲区。

关于node.js - Express + Node : file downloaded through response. download() 与原始文件相比大小不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45997852/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com