Код: Выделить всё
import {onRequest} from "firebase-functions/v2/https";
import express from "express";
import cors from "cors";
import multer from "multer";
const app = express();
app.use(cors({origin: true}));
app.use(express.json());
app.use(express.urlencoded({extended: true}));
// Multer memory storage
const storage = multer.memoryStorage();
const upload = multer({storage: storage});
// Healthcheck endpoint
app.get("/healthcheck", (req, res) => {
res.status(200).json({
status: "ok",
timestamp: new Date().toISOString(),
message: "Backend is running",
});
});
// Parse file endpoint
app.post("/parse-file", upload.single("uploadFile"), async (req, res) => {
console.log("Content-Type:", req.headers);
console.log("File received:", req.file);
console.log("Body:", req.body);
res.json({ok: true, body: req.body});
return;
});
export const api = onRequest(app);
Я пробовал перемещаться по строке app.use(express.json()). Я также пробовал использовать Busboy, который возвращает «Ошибка: неожиданный конец формы». Когда я обращаюсь за помощью к инструментам искусственного интеллекта, они предлагают убедиться, что имя поля в строке upload.single("uploadFile") соответствует тому, что я проверил. Я также пробовал разные версии функций Firebase, которые не изменили результат. Я попытался попасть в конечную точку вручную через Postman, а не через свой пользовательский интерфейс, но получил те же результаты. Исходя из этого, я предполагаю, что это не проблема CORS, но на данный момент все возможно, ха-ха. Если у кого-нибудь есть какие-либо предложения, это будет очень полезно!
Подробнее здесь: https://stackoverflow.com/questions/797 ... nd-of-form
Мобильная версия