[英]How to prevent feathers.js from returning all users in the users route
我一直在使用feathers.js 一段时间了,但环顾四周后我找不到一些东西。 您如何防止经过身份验证的用户看到所有用户?
当我在我的/users
路线上与邮递员进行 GET 时,如果我通过了身份验证,我将收到在应用程序上注册的所有用户。 我如何防止这种情况。 我尝试返回我自己的自定义响应,但这似乎阻止了/authentication
路由。
任何帮助将不胜感激,因为羽毛非常适合使用。
您可以使用limit
和skip
参数。 因此,当您执行 FIND (GET) 请求时,还要发送 limit: 5, skip: 0。这是在feathersjs 中进行分页的一种方式。
你可以在这里查看: https : //docs.feathersjs.com/api/databases/common.html#pagination
目前feathers-authentication-hooks是限制查询的最佳方式,最常用于关联当前用户。 因此,为了将所有请求限制为当前经过身份验证的用户,您可以这样做:
const { authenticate } = require('@feathersjs/authentication');
const { setField } = require('feathers-authentication-hooks');
app.service('users').hooks({
before: {
all: [
authenticate('jwt'),
setField({
from: 'params.user.id',
as: 'params.query.id'
})
]
}
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.