当前位置: 首页 > 知识库问答 >
问题:

快速路线无法运行

越英韶
2023-03-14

我试图创建一个路由到我的用户文件以及其他人,但当我使用邮递员发送获取请求https://localhost:3000/api/users我得到一个"无法获取api/用户/错误。

我尝试将require语句放入变量中,然后将其传递给应用程序。use()函数。我还确保了我的用户中的。第一个参数仅为“/”的js文件。此外,不仅仅是用户的路线,我的所有路线都不起作用。有人能看出我的错误吗?

这是服务器。js文件

const express = require("express");
const connectDB = require("./config/db");

const app = express();

//Connect DB

connectDB();

app.get("/", (req, res) => res.send("API Running"));

//define routes

const userRoute = require("./routes/api/users");

app.use("api/users", userRoute);
app.use("api/auth", require("./routes/api/auth"));
app.use("api/profile", 
require("./routes/api/profile"));
app.use("api/posts", require("./routes/api/posts"));

const PORT = process.env.PORT || 3000;

app.listen(PORT, () =>
  console.log(`Server started on port: ${PORT}
`)
);

这里是用户。js文件,所有其他路由器文件都很相似,只是名称不同。

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

// @route    get api/users
// @desc     test route
// @ access  Public

router.get("/", (req, res) => res.send("User Route"));

module.exports = router;

我还尝试更改用户中的最后一行。js导出默认路由器,但这只会导致意外的令牌错误。提前感谢您的帮助。

共有2个答案

云焱
2023-03-14

只需更换你的line应用程序。使用(“api/用户”,userRoute) 至应用程序。使用(“/api/users”,userRoute) 。js公司

东门文斌
2023-03-14

在服务器中的路由定义之前添加“/”。js文件。因此,用户的路由定义将是app。使用(“/api/users”,userRoute)。对所有管线定义执行相同的操作

 类似资料:
  • 问题内容: 我的Express应用上有一条路线如下: 该ID始终是数字。但是,此路线目前与其他条件匹配,例如。 我想我希望从中得到两点: 仅在ID为数字时使用此路由,并且 仅当尚未为该特定参数定义路线时(例如与冲突)。 能做到吗? 问题答案: 扩展Marius的答案,您可以提供正则表达式和参数名称:

  • 我有一个路线,如果我用方法1实现它,它将很好地工作: 当我向路由发出post请求时,它会运行该函数。我正在尝试使用此函数,以便通过更改路径使其像method2一样工作,可以在其他地方调用此函数: 因此,当我向路由发出post请求时,它会将req和res发送到mycopfunc函数。问题是,当我运行Method2时,我的代码甚至不会运行,因为它会抛出以下错误: 说req没有定义。我可以用Method

  • 我正在尝试将的接口扩展为: 但我得到了以下错误: 没有与此调用匹配的重载。重载1/3'(路径:PathParams,…处理程序:RequestHandler

  • 问题内容: 我用nodejs,express和htt-proxy编写了一个小型代理。它适用于提供本地文件,但在代理外部api时失败: 问题是yahoo api没有响应,也许有响应,但我没有出现在浏览器中。 问题答案: 和-Package 甚至更简单 它将整个请求传递给API,并将响应传递回请求者。这也处理POST / PUT / DELETE和所有其他请求\ o / 如果您还关心查询字符串,则也应

  • 目前正在使用flyway来版本数据库脚本。我正处于我想要基线数据库版本(版本10)的位置,这样当我迁移新脚本时,它不会扫描/验证以前的脚本。 我尝试了以下陈述: 但是,当我尝试运行此语句时,我得到以下错误: 是否有人能够提供我无法对现有数据库进行基线设置的任何原因(即使Flyway基线设计用于对现有数据库进行基线设置-查看文档)? 如有任何建议,不胜感激 谢谢

  • 问题内容: 好吧,我是Laravel的新手,所以直接进入文档开始。文档中存在大量漏洞,因此需要花费大量精力和精力来填补空白,以便进行Laravel设置。现在我已经设置好了,然后继续快速入门指南中的下一步。我创建了路线 现在它说: 所以我打了起来: 但得到404?我试过了 但仍然是404?我遵循了这封信的快速入门指南中的步骤,我缺少什么? 问题答案: 看来您的Laravel应用可以通过Apache