не могу получить статический файл express.static
const express = require("express");
const serverless = require("serverless-http");
const cors = require("cors");
const config = require("config");
const mongoose = require("mongoose");
const path = require("path");
const app = express();
const router = express.Router();
app.use(express.json({ extended: true }));
app.use(cors());
app.use(express.urlencoded({ extended: true }));
app.use(express.static("public"));
app.use("/.netlify/functions/api/auth", require("../routes/auth.routes"));
app.use("/.netlify/functions/api/upload", require("../routes/upload.routes"));
router.get("/", (req, res) => {
res.json({
hello: "",
});
});
mongoose.connect(config.get("mongoUri"), {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true
});
app.use(`/.netlify/functions/api`, router);
module.exports = app;
module.exports.handler = serverless(app);
// получаю json
http://localhost:9000/.netlify/functions/api
res {"hello": ""}
// пробую получить картинку
http://localhost:9000/.netlify/functions/api/test.jpg
res => Cannot GET /.netlify/functions/api/test.jpg
Ответы (1 шт):
Автор решения: dmitriy_vlz
→ Ссылка
Так у тебя вроде картинка не в function/api, а в корневой папке для статики, или при обращении через http://localhost:9000/test.jpg тоже ошибка?
И путь до статики можно попробовать задать по "надежней", как нибудь вот так:
app.use(express.static(path.join(__dirname, 'public')))
Не знает, поможет или нет, но попробуй)
