登录
首页 >  Golang >  Go问答

在 go-swagger 中正确处理非法持有者令牌的方式

来源:stackoverflow

时间:2024-02-18 12:57:24 185浏览 收藏

目前golang学习网上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《在 go-swagger 中正确处理非法持有者令牌的方式》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~

问题内容

我使用 go-swagger 创建了一个 rest api 服务器,并向一些端点添加了不记名令牌安全性。根据文档,令牌验证方法应具有类似 func(string) (interface{}, error) 的签名。

如果传递的不记名令牌无效,令牌验证方法将返回错误。这会导致向请求者发出 500 个带有 json 响应正文的响应:

{
    "code": 500,
    "message": "Token is expired"
}

但是,作为标准,我如何使用代码 401 做出此响应。

注意:对于java类似的讨论可以在https://stackoverflow.com/a/60738107/16087692找到,有什么办法可以实现这个go吗?


正确答案


我没有大摇大摆的经验,但只是偶然发现了这个问题。 答案就在例子中: https://github.com/go-swagger/go-swagger/tree/master/examples/authentication

该示例显示该函数返回:

errors.New(401, "incorrect api key auth")

这是来自包“github.com/go-openapi/errors”的错误,您可以在其中传递 http 状态代码。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>