Feathers authentication.create抛出401未经身份验证的错误



//编码

app.use('/login', {
async create(data, params) {
data.strategy = 'local';
return authentication.create(data, params);
}
});

//配置

"local": {
"usernameField": "username",
"passwordField": "password"
}

我在我的登录API中使用authentication.create方法,当我尝试登录时,我得到了这个错误响应

{
"name": "NotAuthenticated",
"message": "Invalid login",
"code": 401,
"className": "not-authenticated",
"errors": {}
}

//请求

curl --location --request POST 'http://localhost:3030/login'
--header 'Content-Type: application/json'
--data-raw '{
"username": "uname",
"password": "123456"
}'

用户名和密码是正确的,这在我的本地机器(macOS(中有效,只有当我在测试环境(AWS EC2中的ubuntu 20(中运行时才会出错。它们都指向AWS EC2实例内的同一数据库(mySQL 5(。是什么导致了这个问题?

在Windows和PM2的身份验证配置选项中提到,username字段需要转义,因为它也是一个环境变量:

"local": {
"usernameField": "\username",
"passwordField": "password"
}

在即将发布的版本5中,这将不再是必要的。

最新更新