为什么这些不稳定的函数以“;return next()"
Why do these restify functions end with "return next()"?
我正在查看restify的文档。
http://restify.com/
我注意到有几个函数需要以return next()
结尾。以下是一些例子;
function send(req, res, next) {
res.send('hello ' + req.params.name);
return next();
}
server.post('/hello', function create(req, res, next) {
res.send(201, Math.random().toString(36).substr(3, 8));
return next();
});
server.put('/hello', send);
server.get('/hello/:name', send);
server.head('/hello/:name', send);
server.del('hello/:name', function rm(req, res, next) {
res.send(204);
return next();
});
return next();
的目的是什么?为什么函数需要以它结束?
来自Restify的网站:
注意next()的用法。您负责调用next()以便运行链中的下一个处理程序。如下所示,您可以传入一个Error对象,使restify自动向客户端返回响应。
因此,基本上,如果你的函数是链中的最后一个处理程序,你就不需要调用next()
,因为没有办法知道这一点,你可以添加它并让Restify来处理它
相关文章:
- ES6生成器:.next()的输入值
- jquery if语句返回return wong语句
- 函数在return语句之前返回空对象
- Javascript Return and if/else
- 在ES6 Promise中,我应该在解决/拒绝之前使用return吗
- 使用next、prev按钮制作简单的jQuery图像滑块
- Angular promise return"未定义的“;值.NET MVC
- Javascript用函数return替换局部变量
- JavaScript中的“return cb()”有缺点吗
- Redux中间件在next()之前更改状态
- JS-fn()中返回后方括号的含义{return{}[]}
- 为什么javascript在'return false'
- return false不阻止点击
- 当使用return语句时,循环不会中断
- 如何在不使用return的情况下跳过下一个if语句
- return false不停止表单提交
- 如何禁用FuelUX向导步骤1中的NEXT按钮
- ExpressJS next(error) vs return next(error)
- 为什么这些不稳定的函数以“;return next()"
- 在node.js的retify模块中正确放置return next()的位置