当前位置: > > > > go jwt ValidationKeyGetter 无法编译
来源:stackoverflow
2024-04-21 15:03:33
0浏览
收藏
今天给大家带来了《go jwt ValidationKeyGetter 无法编译》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~
问题内容
我是新来的。我正在尝试使用 go 和 jwt 设置一个安全的网络服务器,但我无法编译它:
mw := jwtmiddleware.new(jwtmiddleware.options{ validationkeygetter: func (token *jwt.token) (interface{}, error) { return mysigningkey, nil }, signingmethod: jwt.signingmethodhs256, })
但我只收到以下错误(来自编译器和分析器):
cannot use func literal (type func(*"webserver/vendor/github.com/dgrijalva/jwt-go".token) (interface {}, error)) as type "github.com/dgrijalva/jwt-go".keyfunc in field value
我尝试将其设为一个单独的命名函数,但这没有帮助。 jwt 库显示
type Keyfunc func(*Token) (interface{}, error)
所以,它应该与签名匹配。包括 auth0.com
在内的多个在线示例中的代码是相同的。
我已经成功运行了更简单的 go 程序,包括提供一个简单的网页,因此编译器可以正常工作。
在 ubuntu 18.04 上运行,使用最新稳定版本的 go 和软件包(几天前下载并安装)。谢谢
解决方案
该包似乎不在vendor/github.com 中。我做了以下事情:
cp -R ../github.com/auth0 vendor/github.com/auth0
现在可以编译了。
到这里,我们也就讲完了《go jwt ValidationKeyGetter 无法编译》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注公众号,带你了解更多关于的知识点!