gpt4 book ai didi

javascript - 将大文件从nodejs上传到另一台服务器

转载 作者:搜寻专家 更新时间:2023-11-01 00:01:52 24 4
gpt4 key购买 nike

我有一个使用 Node webkit 的桌面应用程序,我需要能够将大文件从 Node 服务器上传到另一台服务器。它需要能够将文件分块到服务器,因为请求大小限制会阻止流式传输整个文件。我目前正在使用请求模块发布不分块的上传,这适用于小文件,但我似乎找不到任何关于如何从 Node 进行分块上传的示例。以下是我目前所拥有的:

var form = request.post('http://server.com/Document/Upload',
{contentType: 'multipart/form-data; boundary="' + boundaryKey + '"', preambleCRLF: true, postambleCRLF: true},
function(err, res, body) {
console.log(res);
}).form();

form.append('uploadId', myUploadId);
form.append('file', fs.createReadStream(zipFileFullPath), {filename: 'test.zip'});

知道如何在 Node 中完成此操作吗?我见过很多在 Node 服务器上接收分块上传的例子,但似乎找不到任何关于如何从 Node 发送它们的信息。

最佳答案

查看 request 的文档它显示了如何提供分块选项:

request({
method: 'PUT',
preambleCRLF: true,
postambleCRLF: true,
uri: 'http://service.com/upload',
multipart: [
{
'content-type': 'application/json'
body: JSON.stringify({foo: 'bar', _attachments: {'message.txt': {follows: true, length: 18, 'content_type': 'text/plain' }}})
},
{ body: 'I am an attachment' },
{ body: fs.createReadStream('image.png') }
],
// alternatively pass an object containing additional options
multipart: {
chunked: false,
data: [
{
'content-type': 'application/json',
body: JSON.stringify({foo: 'bar', _attachments: {'message.txt': {follows: true, length: 18, 'content_type': 'text/plain' }}})
},
{ body: 'I am an attachment' }
]
}
},
function (error, response, body) {
if (error) {
return console.error('upload failed:', error);
}
console.log('Upload successful! Server responded with:', body);
})

关于javascript - 将大文件从nodejs上传到另一台服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26404989/

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