Я пытаюсь загрузить файл, расположенный в моем хранилище на box.com.
Когда пользователь сделал запрос API с определенным идентификатором, я получаю URL-адрес файла, связанный с этим идентификатором, с box.com и вузел js снова выполняет другой вызов API, чтобы получить куски файла и вернуть его клиенту.
Процесс:
Пользователь выполняет вызов API как: / api? id = 123 для узла js.
В узле js я получаю URL файла, связанный с идентификатором 124.
Полученный URL файла: https://box.com/xyz_123
Используя этот файл, я снова делаювызов API на сервер ящиков и получение файла как чанка по чанку и возврат его клиенту.
Когда файл собирается завершиться через 5 секунд, в браузере он показывает ошибку как: Ошибка сети.
Вот как я вызываю URL-адрес окна, чтобы получить файловые потоки, и возвращаясь к чанку на стороне клиента по чанку.
const creq = https.request(boxurl, (cres) => {
cres.setEncoding('utf8');
res.writeHead(cres.statusCode,
{
'Content-Length': cres.headers['content-length'],
'Content-Type': 'application/octet-stream',
'Content-Disposition' : cres.headers['content-disposition']
}
);
// wait for data
cres.on('data', function(chunk){
res.write(chunk);
});
cres.on('close', function(){
// closed, let's end client request as well
return res.end('Success');
});
cres.on('end', function(){
// finished, let's finish client request as well
return res.end('Success');
});
}).on('error', function(e) {
// we got an error, return 500 error to client and log error
return res.end(e.message);
});
creq.end();
Механизм загрузки файлов очень хорошо работает в моей системе.
Когда я развернул код на удаленном сервере и проверил, появляется только эта ошибка.
Может кто-нибудь, пожалуйста, помогите мне в этом.Как это решить.Заранее спасибо.