当我使用Google.GData.Client
.NET 库并尝试启动OAuth
会话时,它可以正常工作,直到会话过期。当我执行初始GetAccessToken
请求时,该RefreshToken
值似乎是null
.
第 1 步(默认.aspx):
OAuth2Parameters parameters = new OAuth2Parameters();
//<<build parameters with keys and CLIENT_IDs and such>>
string authorizationUrl = OAuthUtil.CreateOAuth2AuthorizationUrl(parameters);
Response.Redirect(authorizationUrl);
第2步( oauth.aspx):
Session["ACCESS_CODE"] = Request.QueryString["code"];
Response.Redirect("Results.aspx");
第三步(结果.aspx)
if (Session["ACCESS_CODE"] == null)
Response.Redirect("Default.aspx");
parameters.AccessCode = Session["ACCESS_CODE"].To_String();
OAuthUtil.GetAccessToken(parameters);
Response.Write("OAuth Access Token: " + parameters.AccessToken);
Session["ACCESS_TOKEN"] = parameters.AccessToken;
Session["REFRESH_TOKEN"] = parameters.RefreshToken;
当我此时检查代码时,我的RefreshToken == null
. 因此我不能打电话
OAuthUtil.RefreshAccessToken(parameters);
没有价值错误是不可能null
的。