В настоящее время я пытаюсь сделать 2 разных вызова API друг за другом в 1 скрипте java / nodejs. Кажется, после того, как моя первая функция работает успешно, вторая вызывает ошибку со следующим:
FetchError: запрос на ошибку, причина: зависание сокета; введите: 'system', errno: 'ECONNRESET', код: 'ECONNRESET'
Ниже приведен фрагмент кода того, что я пробовал до сих пор:
const fetch = require("node-fetch");
const formData = require("form-data");
const fs = require("fs");
//const express = require("express");
var apiName = "<LOCAL SYSTEM FILE TO UPLOAD>";
var lookupName = "<LOCAL SYSTEM FILE TO UPLOAD>";
var accessToken = "Bearer <ACCESS TOKEN>";
var url = '<URL API #1>';
var url2 = '<URL API #2>;
var headers = {
'Accept': 'application/json',
'Authorization': accessToken,
};
const form = new formData();
const buffer2 = fs.readFileSync(lookupName);
const buffer = fs.readFileSync(apiName);
const uploadAPI = function uploadAPI() {
form.append("Content-Type", "application/octect-stream");
form.append('file', buffer);
fetch(url, {method: 'POST', headers: headers, body: form})
.then(data => {
console.log(data)
})
.catch(err => {
console.log(err)
});
};
const uploadLookup = function uploadLookup() {
form.append("Content-Type", "application/octect-stream");
form.append('file', buffer2);
fetch(url2, {method: 'PUT', headers: headers, body: form})
.then(data => {
console.log(data)
})
.catch(err => {
console.log(err)
});
};
if (!apiName !== true) {
uploadAPI()
} else {}
if (!lookupName !== true) {
console.log("Uploading Lookup File");
uploadLookup()
} else {}
Я пытался с помощью " setTimeout "функция, которая, кажется, не работает так, как мне бы хотелось. Мое лучшее предположение, что каждый вызов API должен быть отдельным соединением сокетов? Мы ценим любую помощь в правильном направлении.