所以我正在尝试使用request/request
包上传文件。该文件大小为40589387
个字节,文件为.dmg。当我使用包或除了直接HTML表单之外的任何其他内容上传文件时,它会向文件添加几个字节。所以这是一个使用reuqest包的例子:
uploadFile(src) {
var url = this.storageServerAddress + '/uploadfile';
var formData = {
_: fs.createReadStream(src)
};
return request({
url: url,
method: 'POST',
timeout: 15000,
formData: formData,
headers: {
Filename: getFileName(src)
}
});
}
当我读到content-length
时,我得到的文件大小比文件大300多,最终会损坏.dmg文件并使其无法安装。
如果我只是用简单的HTML表单发送它:
<form enctype="multipart/form-data" action="http://myurl.com" method="post">
<input type="file" name="file" /><br/>
<input type="text" name="fileName" /><br/>
</form>
它发送确切的字节数并且不会损坏我的文件。无论如何,是否完全复制html表单上传?为什么包添加更多字节?