как создать API? мой API не называется - PullRequest
0 голосов
/ 16 мая 2018

Я создал экспресс-проект, используя экспресс-генератор.вот моя структура проекта

структура проекта

enter image description here

users.js

var express = require("express");
var router = express.Router();
router.get("/abc", (req, res) => {
  res.json({ connect: "success" });
});
module.exports = router;

Поэтому, когда я пытаюсь открыть его на localhost: 3000 / abc, я ничего не получаю вообще.там написано не найдено 404

вот мой app.js

var createError = require("http-errors");
var express = require("express");
var path = require("path");
var cookieParser = require("cookie-parser");
var logger = require("morgan");

var indexRouter = require("./routes/index");
var usersRouter = require("./routes/users");
var user = router("./controller/user");

var app = express();

// view engine setup
app.set("views", path.join(__dirname, "views"));
app.set("view engine", "pug");

app.use(logger("dev"));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, "public")));

app.use("/", indexRouter);
app.use("/users", usersRouter);
app.use("/abc", user);

// catch 404 and forward to error handler
app.use(function(req, res, next) {
  //next(createError(404));
  res.status(404).send("sorry cant find it");
});

// error handler
app.use(function(err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get("env") === "development" ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render("error");
});

module.exports = app;

Ответы [ 2 ]

0 голосов
/ 16 мая 2018

Вы должны module.exports маршрутизатор в users.js

var express = require("express");
var router = express.Router();

router.get("/abc", (req, res) => {
    res.json({connect: "success"});
});

module.exports = router;
0 голосов
/ 16 мая 2018
var express = require("express");
var router = express.Router();
var app = express();

app.get('/abc', function(req, res) {
 res.json({ connect: "success" });
});

module.exports = app;

вам нужно экспортировать app в конце, и вы можете использовать app.get вместо.

Или

var express = require("express");
var router = express.Router();

router.get("/abc", (req, res) => {
    res.json({connect: "success"});
});

module.exports = router;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...