在hapi-auth-jw2中,可以在错误响应中添加属性,例如当令牌无效时。因为我需要在响应中添加code
属性,但是当我尝试向errorFunc
中的错误添加属性时,它没有添加属性。
errorFunc: (err) => {
err.code = 'token-invalid';
return err;
}
答案 0 :(得分:3)
我不认为可以将属性code
直接添加到响应对象,因为库调用Boom来返回错误。
但是由于无效令牌可能会导致401 Unauthorized
,因此您可以根据optional parameters扩展回调err
,以包含您想要的任何自定义属性。请查看Boom
关于此回复的文档,以获取更多信息,here。
errorFunc: (err) =>
{
err.message = 'foo bar'; // optional
err.schema = 'error';
err.attributes = {code: 'token-invalid'};
return err;
}
这会产生类似
的响应"payload": {
"statusCode": 401,
"error": "Unauthorized",
"message": "foo bar",
"attributes": {
"error": "foo bar",
"code": 'invalid-token' // <---- your custom value
}
},
"headers" {
"WWW-Authenticate": "error code=\"token-invalid\", error=\"foo bar\""
}