gpt4 book ai didi

asp.net - DotNetOpenAuth.WebServerClient.XSRF- session 在回调期间发生变化

转载 作者:行者123 更新时间:2023-12-02 16:05:25 35 4
gpt4 key购买 nike

我正在尝试设置一个简单的 Oauth2 登录身份验证。但是我被困在抛出以下异常的回调中:

   [ProtocolException: Unexpected OAuth authorization response received with callback and client state that does not match an expected value.]
DotNetOpenAuth.Messaging.ErrorUtilities.VerifyProtocol(Boolean condition, String unformattedMessage, Object[] args) +426
DotNetOpenAuth.OAuth2.WebServerClient.ProcessUserAuthorization(HttpRequestBase request) +771

here 讨论了完全相同的问题

在我的例子中,SessionID 保持不变,但 DotNetOpenAuth.WebServerClient.XSRF-Session cookie 在回调时更改其值。

实现:

    public void Authorize(HttpRequest request)
{
string callbackString = request.Url.AbsoluteUri;
Uri callbackUri = new Uri(callbackString);;

IAuthorizationState authorization = nimbleClient.ProcessUserAuthorization();

if (authorization == null)
{
// Kick off authorization request
nimbleClient.RequestUserAuthorization(returnTo: callbackUri);
}
else
{
//Get AccesToken
Uri.EscapeDataString(authorization.AccessToken);
}

最佳答案

您是否已将 cookie 声明为常量,如下所示:

private const string XsrfCookieName = "DotNetOpenAuth.WebServerClient.XSRF-Session"

即使在回调时,这也有助于维持该值。

关于asp.net - DotNetOpenAuth.WebServerClient.XSRF- session 在回调期间发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15023502/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com