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

无法将查询参数与localhost中的expressJs api一起使用

衡子安
2023-03-14

在我的索引中。js文件

app.use('/api/v1/users', userRouter)

在路由器文件中

router.get("/:id", getUserDataById);

邮递员:

我的GET URL如下所示:<代码>http://localhost:3000/api/v1/users?id=120622

它给出的错误:

Cannot GET /api/v1/users

我认为,根据我遵循的文档和教程,查询参数应该是这样给出的,但这个错误不会消失。

如果我删除了查询,那么其他endpoint就可以正常工作。

我搞不清楚这里出了什么问题。

我在过去的两天里一直被这个困扰着。只是一个解决这个问题的提示,对我会有很大帮助。

提前感谢!

共有3个答案

杜河
2023-03-14

我认为您没有将用户路由器连接到索引。js路由器我为您发送y样本,希望您的问题得到解决:)

// Packages
import express from 'express';

const router = express.Router();
// Routes
import {publicRouter} from "./public";

router.use('/api', publicRouter);

export {router as Router};

和我的公共路由器:

import express from 'express';
import {authRouter} from "./auth";
// Packages
const router = express.Router();

router.use('/auth', authRouter);

export {router as publicRouter};

和我的身份验证路由器:

import express from 'express';
import passport from 'passport';

const router = express.Router();

import registerController from "../../controllers/auth/RegisterController";
import loginController from "../../controllers/auth/LoginController";
import userControllerfrom "../../controllers/users/UsersController";

router.post('/register', registerController.process);
router.post('/login', loginController.process);
router.get('/users/:id', userController.getUser);


export {router as authRouter};
司空兴为
2023-03-14

您没有在Postman中正确调用API。您应该这样调用它:

http://localhost:3000/api/v1/users/120622
苗阳
2023-03-14

首先是你的索引。js和路由。js文件很好,现在您只需正确发送请求即可查看req。参数不同,请求也不同。查询不同

邮递员:

http://localhost:3000/api/v1/users?id=120622

您的索引。

app.use('/api/v1/users', userRouter);

在路由器文件中。

router.get("/", getUserDataById);

你是如何获得身份证的;

let id = req.query.id;

邮递员:

http://localhost:3000/api/v1/users/120622

您的索引。

app.use('/api/v1/users', userRouter);

在路由器文件中。

router.get("/:id", getUserDataById);

你是如何获得身份证的;

let id = req.params.id;

这是您获取身份证的两种方式,如果您还有任何问题,请告诉我,我会尽量澄清您的观点。

 类似资料:
  • 问题内容: 我已经看到了许多有关在Sql查询中使用参数和“赞”的问题,但是我尝试了各种方法来对其进行编码,但仍然无法使我的查询给出结果。如果我在查询本身中输入一个值,它会很好地运行。当我运行列出的第一个查询时,出现错误“必须声明标量变量“ @Search”,但我认为我使用cmd.Parameters.AddWithValue语句做到了。有人可以看到我可能在做错什么吗?感谢您的任何帮助。 问题答案:

  • 问题内容: 我刚刚开始学习Java流,并遇到了问题。请看下面的例子。这是Node类的一部分: 我的意图是在流中的每个节点上使用名称和结果参数调用#findChildren。我尝试使用方法引用Node :: findChildren时没有运气。我将不胜感激的解决方案与运营商。 是否可以将方法引用与参数一起使用?我喜欢流的想法,我只想使代码更具可读性。 实际上,我认为还有一个类似的问题,方法引用具有读

  • 问题内容: 我的数据库中有三个表。产品表,类型表和映射表Prod_Type。我的数据库是sql server,这就是为什么我不能使用group_concat函数而使用Stuff函数的原因。我的表结构如下 产品表 类型表 Prod_TypeTable 我能够将产品表加入到Prod_type的映射表中。我使用了东西查询来避免出现多个结果。我的查询是这样的: 我现在需要做的是将我先前的查询结果连接到类型

  • 我目前正在将IntelliJ IDE用于复杂的GWT项目。我想在GWT的开发模式中利用JRebel,所以最近我为IntelliJ安装了JRebel插件,但在使其工作时遇到了麻烦。 基本上IntelliJ不具备在更改时自动编译应用程序的能力,所以每当您对代码进行更改时,我都必须进行编译- 信息:使用JavaC1.7.0_21编译java源代码信息:15个错误信息:0个警告信息:编译完成,9分钟5秒内

  • 我正在使用JdbcTemplate。queryForObject(字符串sql、RowMapper、RowMapper、Object…args)从Oracle获取一行,但继续获取EmptyResultDataAccessException结果大小不正确:应为1,实际为0。 我已经使用Oracle SQL Developer验证了我的SQL,它返回了1行,就像它应该返回的一样。 > 这一直失败。 这

  • 我最近安装了Xcode8测试版5。在我的MAC 10.11.6上的Appium 1.6.0测试版现在,在阅读了所有的论坛并使Appium启动并启动我的应用程序后,我无法找到如何用这个Appium 1.6.0测试版启动我的inspector和在我的应用程序中找到元素。如何使用appium 1.6.0测试版启动inspector?如果不能,我们如何找到xpath或找到元素??