node.js - 如何使用路由参数和查询参数在express中创建api

标签 node.js express routes routeparams

我的应用程序是在带有express的nodejs中。

我正在尝试构建一个具有路由参数和查询参数的 API

以下是我尝试过的事情

 using **=**

 app.get('/:accountId/accounts/password/update?uniqueCode={uniqueCode}', async function(req, res) {
         //my code here
    }

app.get('/:accountId/accounts/password/update?uniqueCode/:uniqueCode', async function(req, res) {
             //my code here
   }

但是当我从 postman 那里打到这个时,如下所示

http://localhost:5000/722/account/password/update?uniqueCode={dfgsfksjfksdhfksj}

我在尝试过的两种方式中都收到来自express的NOTFOUND错误。谁能建议我该怎么做。

最佳答案

您必须检查代码中的 queryParams :

app.get('/:accountId/accounts/password/update', async function(req, res, next) {
          const accountId = req.params.accoundId;
          const  uniqueCode = req.query.uniqueCode;
         ...
          if (/* checkuniqueCode is not valid */) {
               return next()
           }

 }

这是文档:https://expressjs.com/fr/api.html#req.query

关于node.js - 如何使用路由参数和查询参数在express中创建api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61098395/

相关文章:

javascript - Node.Js 错误 "No ' 请求中存在 Access-Control-Allow-Origin' header ”

node.js - 如何找到我的 mongoDB 的远程 URL 以在我的 Node.js 代码中使用?

javascript - express 4.x 将 http 重定向到 https

node.js - 来自 socket.io 的新 cookie 值不起作用?

javascript - 客户端路由(使用 react-router)和服务端路由

c# - ASP .NET MVC 区域注册

node.js - Express,如何将长url路径传递给react router?

angularjs - Passport.js 路由未重定向

node.js - 将变量传递给expressjs 3条路线

java - Play Framework 2 中的长动态路线