не могу получить статический файл 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')))

Не знает, поможет или нет, но попробуй)

→ Ссылка