Получить длинный json из API
У меня есть функция Google Cloud, которую я использую в качестве API для получения некоторых данных с помощью вызова fetch.
- Мой сайт размещен на wix.
- Я использую среду WIX nodejs (VELO) в качестве серверной части.
Когда я использую свою функцию на внешнем интерфейсе wix, она работает и извлекает требуемую длинную последовательность BASE64 (800ko) в виде строки, отображаемой в консоли.
Когда я использую его в бэкэнде, он не работает.
export async function toCode(imgURL, sequenceToTranslate) {
const api_url = "MY_API_URL";
// const key = await getSecret("QRAPIKey");
var myHeaders = {};
myHeaders["Content-Type"] = "application/json";
myHeaders["Authorization"] = "Bearer MY_KEY";
var raw = JSON.stringify({ "text": sequenceToTranslate, "width": 1500, "height": 1500});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw
};
return fetch(api_url, requestOptions)
.then((httpResponse) =>{
if (!httpResponse.ok) { return Promise.reject("Fetch did not succeed");}
console.log(httpResponse);// <== **Display in both front or back end**
return httpResponse.json();
})
.catch((z) => { console.log(z); return z })
}
httpResponse.json() работает на внешнем интерфейсе, но не обрабатывается при использовании на внутреннем интерфейсе.
Причина, по которой он не работает, - это РАЗМЕР ДАННЫХ в ответе от моего API. Когда я убеждаюсь, что ответ base64 вдвое меньше: он работает в серверной части, и я получаю данные как ввод консоли.
(Для удобства чтения я упростил текст запроса.)
Есть ли способ получить в бэкэнде длинный фрагмент данных, полученный из моего API, без использования буфера или потока?
Я понятия не имею, относится ли это к wix или это то, что я должен делать со своей стороны.