【发布时间】:2021-03-13 01:52:05
【问题描述】:
我使用了@hapi/basic 插件,并像教程一样编写了验证函数。它工作正常,我可以使用正确的用户名和密码登录,如果我发送的用户名和密码不正确,它也会返回 401 HTTP 错误。问题是,我无法在路由处理程序函数中获取凭据。它始终为空。如果可以,请帮助我。
const validateUser = async (
request: IRequest,
username: string,
password: string,
h: Hapi.ResponseToolkit,
) => {
try {
const user = await database.manHourUserModel.findOne({ userName: username });
if (!user || !user.active) {
return {
isValid: false,
credentials: null,
};
}
const isValid = user.validatePassword(password);
return { isValid, credentials: user };
} catch (error) {
return { isValid: false };
}
};
我无法在路由处理函数中获取凭据:
public async login(request: IRequest, h: Hapi.ResponseToolkit) {
return request.auth.credentials;
}
【问题讨论】: