gpt4 book ai didi

node.js - 在连接路由器中获取请求对象

转载 作者:太空宇宙 更新时间:2023-11-04 02:40:42 25 4
gpt4 key购买 nike

嗨,我有一个连接中间件,它使用连接路由器来处理 get、post 等方法的请求。如果有人选择这两种方法以外的方法,我想抛出错误。我在路由器函数内没有请求对象的范围。下面是我的代码

var connectDomain = require('connect-domain'),
connectRoute = require('connect-route'),
connect = require('connect'),
app = connect();
app.use(connectDomain()) // For error handling
.use(connect.query())// To use automatic query
.use(connectRoute(function (router) {
// To Handle Get request
router.get('/aaa', function (req, res, next) {
console.log ("Got Trigger request to GET");
})
// To Handle POST request
router.post('/aaa', function (req, res, next) {

console.log ("Got Trigger request to POST);


})
}))

我在 router.get 和 router.post 中拥有请求对象的范围。我需要在这些之前检查 req.method 并抛出错误。我无法继续进行。任何帮助都会很有帮助

最佳答案

您可以为此使用中间件:

app.use(connectDomain())   
.use(connect.query())
.use(function(req, res, next) {
if (req.method !== 'GET' && req.method !== 'POST') {
res.writeHead(405);
res.end('You are not allowed to use this method!');
} else {
next();
}
})
.use(connectRoute(function (router) {
...
}));

关于node.js - 在连接路由器中获取请求对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16453892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com