Sails JS:如何将值从策略传递给控制器

时间:2015-03-11 11:10:04

标签: sails.js

我有一个策略来检查请求是否具有完整且有效的正文。我想向控制器发送一个值,以确定结果是通过还是失败。反正有没有实现这个目标?

2 个答案:

答案 0 :(得分:6)

如果策略失败,为什么要将控制传递给控制器​​?通常,您所描述的策略的目的是在策略失败时转移程序流,也许转移到错误页面。无论如何,您最需要的是req.options

  

req.options允许在不修改原始对象的情况下更改(或提供默认值)请求参数。

您可以在策略中的req.options中设置一个值,然后在控制器中将其读回,而无需修改实际请求。

答案 1 :(得分:2)

策略获取请求对象作为输入,您可以在将对象发送到控制器之前修改该对象,即通过请求对象搭载数据。

您可以在政策中执行以下操作:

req.body.paramname = 'newval';

在控制器中,您可以获得值

var paramFromPoliy =  req.body.paramname;