我使用go-swagger创建了一个REST服务器,并向几个端点添加了承载令牌安全性。根据文档,令牌验证方法应该具有类似于func(string) (interface{}, error)
的签名。
如果传递的承载令牌无效,则令牌验证方法返回错误。这将产生500个对具有JSON响应体的请求者的响应:
{
"code": 500,
"message": "Token is expired"
}
但是,作为标准,我如何使用代码401来做出这个响应。
Note:类似于https://stackoverflow.com/a/60738107/16087692的讨论可以在https://stackoverflow.com/a/60738107/16087692上找到,有什么方法可以实现这一目标吗?
发布于 2021-11-04 04:28:17
我没有自吹自擂的经验,只是偶然发现了这个问题。答案在示例中:https://github.com/go-swagger/go-swagger/tree/master/examples/authentication
该示例显示该函数返回一个:
errors.New(401, "incorrect api key auth")
这是包中的一个错误:“github.com/go-openapi/ error”,您可以在其中传递一个http状态代码。
https://stackoverflow.com/questions/69838837
复制