ich meine WebAPI OAuth 2.0 durch diese Linien konfiguriert:WebAPI OAuth UseOAuthBearerAuthentication gibt "Sequenz enthält mehr als ein Element" Fehler
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions
{
Provider = new OAuthBearerAuthenticationProvider(),
});
app.UseOAuthBearerTokens(OAuthOptions);
Aber es gibt mir die folgende Fehlermeldung bei jeder Anfrage:
Message : An error has occurred.
ExceptionMessage : Sequence contains more than one element
ExceptionType : System.InvalidOperationException
StackTrace : at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at Microsoft.Owin.Security.AuthenticationManager.d__8.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at System.Web.Http.HostAuthenticationFilter.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.AuthenticationFilterResult.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()
Mein OAuthOptions
ist:
OAuthOptions = new OAuthAuthorizationServerOptions
{
TokenEndpointPath = new PathString("/Token"),
Provider = new ApplicationOAuthProvider(PublicClientId, UserManagerFactory),
AuthorizeEndpointPath = new PathString("/Account/ExternalLogin"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
AllowInsecureHttp = true,
};
}
Wenn ich Kommentar UseOAuthBearerAuthentication alles ist in Ordnung! Ich habe OAuthBearerAuthenticationProvider noch nicht angepasst und verwende es direkt, aber warum gibt es einen Fehler?
Sie sind ein Lichtschwert –
Hallo, ich das gleiche Problem habe. Das funktionierte für mich, aber jetzt funktioniert es nicht mehr. Ich habe einige Threads gefunden, die eine mögliche Ursache für die Owin-Versionsaufhebung von 3.0.0 auf 3.0.1 vermuten lassen. Aber selbst wenn ich 3.0.0 registriere, funktioniert es nicht für mich. Versucht die obige Lösung immer noch nicht funktioniert. Könnte jemand hier führen? –
Stellen Sie Ihre Frage in einem neuen Thread. Niemand kann deine Frage hier sehen! –