ENOENT: такого файла или каталога нет, stat '/Users/sampai/Desktop/Repos/task_tracker/task_tracker/build/index.html' - PullRequest
1 голос
/ 25 апреля 2020

Итак, я пытаюсь создать свои внутренние маршруты для приложения MERN с полным стеком (с mysql). Мое приложение использует sequelize в качестве моего ORM, и когда я попытался написать маршрут получения для получения данных из базы данных, эта ошибка появляется

"ENOENT: такого файла или каталога нет, stat '/ Users / sampai / Рабочий стол / Repos / task_tracker / task_tracker / build / index. html '"

Ниже мой запрос get в файле моего контроллера.

module.exports = function(router) {
    router.get("/api/tasks", (req, res) => {
        db.Task.findAll({}).then(data => {
            res.json(data);
        });
    });
}

Ниже мой сервер. js file

const express = require("express");
const app = express();
const path = require("path");
const PORT = process.env.PORT || 3000;
const db = require("./models");

app.use(express.static(path.join(__dirname, "build")));
app.use(express.urlencoded({ extended: true }));
app.use(express.json());

app.get("ping", function (req, res) {
    return res.send("pong");
})

app.get("*", function (req, res) {
    res.sendFile(path.join(__dirname, "build", "index.html"));
})

require("./controllers/taskController")(app);

db.sequelize.sync().then(function() {

    app.listen(PORT, () => {
        console.log("Your API server is now on PORT:", PORT);
    })

})

И, наконец, ниже моя модель сиквела

const Sequelize = require("sequelize");

module.exports = function(sequelize, DataTypes){
    var Task = sequelize.define("Task", {
        id: {
            type: Sequelize.INTEGER(11),
            allowNull: false,
            autoIncrement: true,
            primaryKey: true
        },
        task: DataTypes.STRING
    });
return Task;
}

Может кто-нибудь помочь мне понять, почему я получаю эту ошибку? Спасибо!

1 Ответ

1 голос
/ 25 апреля 2020

На самом деле я понял это, я только что избавился от этого app.get с помощью оператора build, index. html на сервере. js и это сработало!

...