帆在GET中禁用REST的条件

帆在GET中禁用REST的条件,rest,sails.js,Rest,Sails.js,我实施了护照本地策略和护照持有人策略 当用户使用用户名/密码凭据登录时,我生成JSON Web令牌,返回给请求者。在每次请求时,我从查询中获得access\u令牌,将该令牌从JWT解码到object,并在/api/policies中实现承载授权。所有auth都可以正常工作 但是当我提供这个访问\u令牌到RESTful路由,即用户时,我得到了空数组 问题是,Sails接受访问\u令牌作为标准 例如: 获取/用户##禁止 GET/user?access_令牌=##空数组 我如何禁用或修复它?您最

我实施了护照本地策略和护照持有人策略

当用户使用用户名/密码凭据登录时,我生成JSON Web令牌,返回给请求者。在每次请求时,我从查询中获得
access\u令牌
,将该令牌从JWT解码到object,并在
/api/policies
中实现承载授权。所有auth都可以正常工作

但是当我提供这个
访问\u令牌
到RESTful路由,即
用户
时,我得到了空数组

问题是,Sails接受
访问\u令牌
作为标准

例如:


获取/用户##禁止
GET/user?access_令牌=##空数组


我如何禁用或修复它?

您最好在头中发送访问令牌,而不是在URL中发送。但是,如果您要问的是如何将某个属性作为blueprint route中的标准列入黑名单,则可以在您的config/routes.js文件中通过以下方式完成:

"GET /user": {blueprint: "find", criteria: {blacklist: ["access_token"]}}
这将覆盖默认黑名单,因此您可能希望在自定义数组中包含这些默认值:

"GET /user": {
  blueprint: "find", 
  criteria: {
      blacklist: ["access_token", "limit", "skip", "sort", "populate"]
  }
}

我们可以看看
GET/user
映射到的控制器代码吗?很好的解释,谢谢。我不考虑标题,似乎这可以解决问题。回到第二个问题。那么,如果我想将黑名单属性设置为所有路由呢?我需要像上面那样设置所有路由,或者可以在单行代码中以其他方式进行设置?您可以在a中设置
req.options.criteria.blacklist
,并将其应用于所有控制器操作。。。