问题标签 [express-router]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
517 浏览

node.js - Node Express Router can't get response params

I can not retrieve route parameters with a simple express.Router() in an web app.

Here is a minimal example:

I don't get any error, the res.params is simply empty when I try to reach: http://localhost:3000/hello/100 for example.

Here is the response:

What I have tried so far is to set express.Router({ params: 'inherit' }) as told here: https://github.com/expressjs/express/issues/2151#issuecomment-44716623 but it doesn't change anything.

And here is the manual: http://expressjs.com/en/guide/routing.html

0 投票
1 回答
30 浏览

node.js - 如何在 NodeJS 中使用隐含的函数参数

在我网站的路由文件中,我有这样的功能:

验证函数如下所示:

如果我想将参数传递给验证器函数(比如我要验证的表单的名称)除了隐含req,res,next的,那是怎么做的?我已经在控制器中尝试过,ctrl1.validate(formName)但都没有工作。ctrl1.validate(formName, req,res,next)function(formName, req,res,next)

0 投票
1 回答
119 浏览

javascript - 承诺不返回任何数据以获取返回

我正在构建一个使用猫鼬访问数据库的快速路由器。我当前的问题依赖于这段代码:

resetPassword 使用以下猫鼬调用:

出于某种原因,我的路线被调用并且响应很好(检查了console.log(response)内部承诺)。

我的问题是响应永远不会发送回客户端,这会使 fetch 调用超时。

为什么我的承诺不返回数据?

0 投票
1 回答
132 浏览

azure - 将现有 ExpressRoute 添加到现有 Azure Fabric 群集

我创建了一个没有 ExpressRoute 的 Azure Fabric 群集,没有任何网关。使用所有默认选项从 Azure 门户创建。现在,我的结构集群服务无法访问本地服务器。我知道我需要为此设置 ExpressRoute。我们已经为另一个结构集群创建了快速路由。

我可以重复使用相同的现有 expressroute 吗?如何使用其他结构群集使用的现有 ExpressRoute 更新我的结构群集?

0 投票
1 回答
164 浏览

javascript - Express.js 内部,app 对象上的挂载路径存储在哪里?

我面临一个非常具体的用例,在迭代应用程序对象时,我需要访问各种快速子应用程序的挂载路径。

示例代码:

我在任何地方都没有找到

0 投票
3 回答
787 浏览

node.js - 注册路由后,所有路由都调用 Express.Router 中间件

我有一个简单的应用程序,它有一个登录页面和一个用于经过身份验证的用户的部分,未经身份验证的用户从中被重定向回登录。在我所有的路线结束时,我有app.all('*', ...)返回 404 错误页面。

当我通过身份验证时,一切正常,但如果我注销并尝试获取不存在的路由,我将被重定向到登录页面,而不是得到 404 响应。

我知道这是因为我添加了处理重定向的中间件,但我希望它只能在那个确切的路由器中指定的路由上工作 - 而不是在中间件之后放置的所有路由(甚至是应用程序级的路由)中。

我目前看到的唯一解决方案是在每个受限路由中使用这个 authCheck 中间件,而不是使用全局注册它,router.use但我仍然想知道是否有更好的方法?

感谢您的任何想法..

0 投票
1 回答
261 浏览

angularjs - Express JS 多路由文件不起作用

我使用 AngularJS 和 NodeJS 作为后端。我有 2 个路由文件 - route1.api.jsroute2.api.js。它们在server.js中的使用如下:

route1.api.jsroute2.api.js具有类似的代码,如下所示:

我正在从 2 个不同的 Angular 数据服务文件访问这些路由:

route1.data.service.js

route2.data.service.js

现在,问题是route1工作正常,但route2不是。postRoute2 ()方法仅适用于console.log()行,但不能超出此范围。可能是什么问题呢?

route2.api.js代码:

0 投票
0 回答
515 浏览

node.js - 如何在跟踪参数的同时链接 Express 路由器?

我正在使用 express 4.16 并且我试图保持我的代码整洁,所以我正在使用路由器功能。我知道我们可以链接路由器。让我们看这个例子:

./server.js:

./routes/user.js:

./routes/cars.js:

所以现在我们可以打电话https//server.com/users/42来获取用户https//server.com/users/cars/42信息和汽车信息。但这并不是我真正想要的,在这种情况下,ahttps//server.com/cars/42会更合适。相反,如果我们想要实现这个 urlhttps//server.com/users/42/cars来获取所有用户 42 的汽车,或者https//server.com/users/42/cars/42获取用户 42 的特定汽车怎么办。你如何告诉 Express 的路由器你也想要'users/:id'

这可能吗?如果可以,我们该怎么做?或者在这个例子中,我应该只在同一个文件中编码用户和汽车路线,并停止分成几个 .js 文件。

0 投票
0 回答
286 浏览

node.js - Express 中间件 JWT 添加多个身份验证路由

我正在做一个项目,我需要通过 JWT 对用户进行身份验证,我为管理员、用户、客户等每种类型的用户创建了一个路由中间件。

现在,如果客户部分中的某些 API 并且我需要允许客户和管理员使用它,那么当客户请求时它可以工作并且当管理员请求时它也应该工作。我怎样才能做到这一点?我需要做的很可能是这样的:

如何在中间件路由中添加类似 OR 的操作,并且任何返回该next();函数的人都应该验证并忽略另一个。

0 投票
1 回答
8539 浏览

node.js - 在快速路线上渲染反应组件

我有一个使用快速服务器和create-react-app前端的应用程序。结构看起来像这样。(不包括结构中的所有文件 - 只包括重要的文件)

我的 index.js 文件正在启动快速服务器,如下所示-

服务器端的路由文件如下——

我的 app.js 文件

在我的客户端,我主要关注的文件是landing.js,如下所示。

在上面的组件中,我关心的是a导致要么/steam/github快速路由的标签,这是故意的,因为我想重新加载页面并且在页面上我只获取res.send数据,这是有道理的,因为这是一个快车路线。但我想在路线上渲染我的steam组件。/steam(与 github 相同)。我希望我BrowserRouter的 inApp.js会根据路由更改组件,但事实并非如此。我是,只获取快递数据。如何在路线上呈现我的Steam反应组件。express '/steam'显然,我正在以奇怪的方式混合服务器和客户端。