Sails.js从另一个调用一个控制器动作并在req.body中传递其他参数

Man*_*ngh 5 model-view-controller sails.js waterline

我需要从另一个动作调用一个控制器动作.到目前为止,我没有被要求通过任何额外的参数和电话

sails.controllers.modelName.actionName(req,res)

做的工作.但是,这次我需要为req.body添加新的参数,以便调用控制器动作.在帆中有没有办法做到这一点?

我确实试过这里指定的技巧,但问题是当我调用其他控制器动作时,我在动作中所做的更改会丢失

编辑:如果我尝试在其他控制器操作中使用req.body访问参数,但是如果我尝试使用req.params.all()访问它,则无效

sgr*_*454 6

这不是在Sails中编写可重用代码的最佳实践.如果您发现自己想要从另一个控制器调用一个控制器,则应将共享代码移动到服务中并从两个控制器调用服务方法.

无论如何,Sails不允许您直接修改请求参数.您可以修改req.body,但实际上您应该在请求中修改的唯一req.options内容是为此目的而设计的.这样,您可以准确表示请求中实际收到的内容.