【发布时间】:2022-02-08 18:56:46
【问题描述】:
我是 Express.js 的新手;我尝试构建一个没有任何数据库的 API。所有路由都正常工作,但发布和删除 API 不工作。 当我在浏览器中点击删除 URL 时,我发现一个错误。
我的 app.js 路由页面看起来像
import express from "express";
import logger from "morgan";
import bodyParser from "body-parser";
// get routes
import indexRouter from "./routes/index.js";
import postRouter from "./routes/post.js";
import tagRouter from "./routes/tags.js";
import commentRouter from "./routes/comment.js";
import authorRouter from "./routes/author.js";
// post routers
import postMethodRouters from "./routes/postMethodRouters.js";
// delete routers
import deletePostRouters from "./routes/delete.js";
var app = express();
app.use(logger("dev"));
app.use(bodyParser.json());
// app.use(express.urlencoded({ extended: false }));
// get method
app.use("/api/v1/", indexRouter);
app.use("/api/v1/post", postRouter);
app.use("/api/v1/tags", tagRouter);
app.use("/api/v1/comments", commentRouter);
app.use("/api/v1/authors", authorRouter);
// post method
app.use("/createPost", postMethodRouters);
// delete method
app.use("/api/v1/", deletePostRouters);
var listener = app.listen(8080, function () {
console.log("Listening on port " + listener.address().port);
});
我的 delete.js 路由看起来像
import express from "express";
var router = express.Router();
router.delete("/delete/:id", function (req, res) {
res.status(200).send("DELETE request to homepage");
});
export default router;
我的 post.js 路由器看起来像
import express from "express";
import getBlog from "../API/Post/singleGenrater.js";
var router = express.Router();
router.post("/", function (req, res) {
res.send("POST request to homepage");
});
export default router;
【问题讨论】:
-
浏览器 url 你只能测试'get'路由。您将需要类似邮递员或 vscode 上的休息客户端
-
是的,一秒钟前我发现了问题,我花了 2 天时间出错。对不起,这都是我的错。我错误地更改了环境变量中的 API URL,导致我遇到此错误。
-
是的,一秒钟前我发现了问题,我花了 2 天时间出错。对不起,这都是我的错。我错误地更改了环境变量中的 API URL,导致我遇到此错误。
标签: javascript api express