go jwt ValidationKeyGetter не компилируется - PullRequest
0 голосов
/ 07 октября 2018

Я новичок.Я пытаюсь настроить безопасный веб-сервер, используя 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   

Я пытался сделать это отдельным именем с именем func, но это не помогло.Библиотека jwt показывает

type Keyfunc func(*Token) (interface{}, error)

, поэтому она должна соответствовать подписи.Код одинаков в нескольких онлайн-примерах, включая auth0.com.

Я успешно запустил простые программы go, включая обслуживание простой веб-страницы, поэтому компилятор работает правильно.

Запускв Ubuntu 18.04 с новейшей стабильной версией go и пакетов (скачано и установлено несколько дней назад).Спасибо

1 Ответ

0 голосов
/ 07 октября 2018

Похоже, пакета не было в vendor / github.com.Я сделал следующее:

cp -R ../github.com/auth0 vendor/github.com/auth0

и теперь он компилируется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...