GOOGLE ADS

понедельник, 2 мая 2022 г.

Как отправить zip-файлы на сервер узла через HTTP POST? (сервер всегда получает только "{}")

Для своей дипломной работы я пишу программу для визуализации персональных данных, запрашиваемых в соответствии со статьей 20 GDPR. Поскольку такие данные обычно заархивированы, мне нужно иметь возможность отправлять заархивированные файлы на мой сервер node.js. Это то, что я сделал до сих пор.

 async function test (element){
let file = element.files[0];
await base64(file);
async function base64(file){
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = await async function () {
console.log(reader.result);
fetch('/api', {
method: 'POST',
body: reader.result,
})
.then(response => response.json())
.then(result => {
console.log('Success:', result);
})
.catch(error => {
console.error('Error:', error);
});
};
reader.onerror = function (error) {
console.log('Error: ', error);
};
};
}

На данный момент я только пытаюсь выполнить console.log() моего request.body, но, тем не менее, вот код моего сервера:

const { response } = require("express");
const express = require("express");
const { request } = require("http");
const JSZip = require("jszip");
const app = express();
app.listen(1234, () => console.log("Listening at 1234"));
app.use(express.static("public"));
app.use(express.json({limit: "10000mb"}))
app.post("/api", async (request, response) => {
console.log(request.body);
response.json({status: "success33"});
});

Когда я регистрирую reqeust.body, он пуст "{}". Кто-нибудь знает вопрос для этого? Прочитал много тем, но ни одна не подходила под мою проблему.

Заранее спасибо!


Решение проблемы

я столкнулся с той же проблемой, и когда я добавил это промежуточное ПО:

import * as fileUpload from 'express-fileupload';
app.use(fileUpload({createParentPath:true}))

проблема исчезла, и я смог получить любой файл изreq.files

Комментариев нет:

Отправить комментарий

Laravel Datatable addColumn returns ID of one record only

Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...