无法通过 featherjs 中的查找函数将参数传递给服务挂钩



Featherjs find 服务无法通过 find 函数传递额外的参数。在下面查找将额外参数数据传递给服务的服务。 但无法在服务挂钩上接收值。

客户端代码 :

return this.app.service('userlist').find({
query: { usersIds: { "$in" : [this.user._id]} },
paginate: false,
params:{ name:'sam' }
}).then(response => {

}).catch(error => {
console.log(error);
});

服务器代码(服务挂钩(:

module.exports = function (options = {}) { 
return async function dogetUsr (context) {
const { data } = context;
console.log('Client Param data -->',context.params.name);
return context;
};
};

服务器未接收参数数据 -->params:{ name:'sam' }

服务器/服务挂钩的输出:

Client Param data -->undefined

出于安全原因,客户端和服务器之间只传递params.query。一般来说,我不建议让客户端禁用分页,除非保证你只得到几条(少于 100 条(记录。否则,具有许多记录的请求可能会导致双方都出现重大问题。

如果它仍然是您需要的东西,您可以使用禁用分页钩子,如果您想禁用分页,您可以将$limit设置为-1

const { disablePagination } = require('feathers-hooks-common');
module.exports = { before: {
find: disablePagination()
} };

相关内容

  • 没有找到相关文章

最新更新