Servicestack отправляет мне сообщение об ошибке при использовании GET для аутентификации

#c# #servicestack

#c# #servicestack

Вопрос:

Я получаю ошибку в JSON JWT Auth.

Запросы аутентификации GET отключены, чтобы включить функцию set authefeature.AllowGetAuthenticateRequests= true

Это сработало несколько дней назад, и я не могу понять, что мы изменили, чтобы это сломать. Я не могу найти это свойство в функции аутентификации. Я даже скопировал код из модульных тестов GitHub. Он не видит, что в AuthFeature есть свойство для AllowGetAuthenticateRequests для AllowGetAuthenticateRequests

         Plugins.Add(new AuthFeature(() => new CustomUserSession(),
            new IAuthProvider[]
            {
                new BasicAuthProvider(),                    //Sign-in with HTTP Basic Auth
                new JwtAuthProvider(AppSettings) {
                    //HashAlgorithm = "HM256",
                    //PrivateKey = privateKey.ExportParameters(true),
                    AuthKeyBase64 = AppSettings.GetString("jwt.auth.key"),
                    RequireSecureConnection = false,
                    //Turn on for Prod: EncryptPayload = true
                    }, //JWT TOKENS
                new CredentialsAuthProvider(AppSettings)
            })
        {
            HtmlRedirect = "/",
            //IncludeRegistrationService = true,
        });
  

Ответ №1:

Функция аутентификации.Свойство AllowGetAuthenticateRequests — это лямбда-выражение, в котором вы можете включить все запросы GET с помощью:

 Plugins.Add(new AuthFeature(...) {
    AllowGetAuthenticateRequests = req => true
});
  

Если оно у вас не отображается, возможно, у вас установлена более старая предварительная версия, чтобы установить последнюю версию, очистите кэш пакетов NuGet:

 $ nuget locals all -clear
  

Затем восстановите свое решение снова.