@lena_tihonova_bl

Можно ли загрузить файл с большим количеством символов в multer.js?

Есть текстовый файл, весящий 100 мб. В нём, как уже понятно, очень много символов - больше миллиона точно. Программа не даёт загрузить такое, ибо выходит уведомление Гугла об отсутствии подключения к интернету. Можно ли как-то обойти это ограничение?

Если код что-то даст, то вот он:
const fs = require("fs");
const path = require("path");

const body_parser = require("body-parser");
const multer = require("multer");
const express = require("express");

const app = express();

app.use(body_parser.urlencoded({ extended: true }));
app.use(body_parser.json());

const storage = multer.diskStorage({
    destination: function (request, file, callback) {
        callback(null, './uploads/');
    },
    filename: function (request, file, callback) {
        console.log(file);
        callback(null, file.originalname)
    }
});

const upload = multer({ storage: storage });

app.get("/", (req, res) => {
    res.sendFile(path.join(__dirname, "index.html"));
});

app.get("/script.js", (req, res) => {
    res.sendFile(path.join(__dirname, "script.js"));
});

app.post('/send_file', upload.single('avatar'), function (req, res, next) {
    // req.file is the `avatar` file
    // req.body will hold the text fields, if there were any

    //console.log(req.body);
    //console.log(req.file);

    const data = fs.readFileSync(path.join(__dirname, "uploads", req.file.originalname));
    console.log(data.toString());

    const data_array = data.toString().split("\n");

    /* const array = [];

    for (let i = 0; i < data_array.length; i++) {
        array.push([data_array[i]]);
    }

    console.log(array); */
});

app.listen(3000, () => console.log("Server is running on port", 3000));


Изменено: оказывается, у меня не грузятся все файлы, размер которых больше примерно 20000кб. Хотя в документации сказано, что размер загружаемого файла неограничен. С чем это может быть связано?
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы