gpt4 book ai didi

c# - 刷新失败,出现 403 禁止错误。刷新 token 已被撤销或过期

转载 作者:太空宇宙 更新时间:2023-11-03 14:49:03 26 4
gpt4 key购买 nike

我正在使用 Microsoft.WindowsAzure.MobileServices.MobileServiceClient 使用其 Google 帐户对用户进行身份验证,并使用 Xamarin.Auth.AccountStore 来存储 token 。当应用程序第一次运行时,AccountStore 是空的。用户使用 MobileServiceClient.LoginAsync 方法登录。

    client.LoginAsync(_mainActivity, 
MobileServiceAuthenticationProvider.Google, "myjobdiary", new Dictionary<string, string>
{
{ "access_type", "offline" }
});

一切正常,用户已获得授权并使用方法存储 token ..

        public void StoreTokenInSecureStore(MobileServiceUser user)
{
var account = new Account(user.UserId);
account.Properties.Add("token", user.MobileServiceAuthenticationToken);
_accountStore.Save(account, "myjobdiary");
}

现在我重新启动我的应用程序并使用方法从帐户存储中检索用户..

        public MobileServiceUser RetrieveTokenFromSecureStore()
{
var accounts = _accountStore.FindAccountsForService("myjobdiary");
if (accounts != null)
{
foreach (var acct in accounts)
{
if (acct.Properties.TryGetValue("token", out string token))
{
return new MobileServiceUser(acct.Username)
{
MobileServiceAuthenticationToken = token
};
}
}
}
return null;
}

检索到的用户设置为使用 MobileServiceClient。现在我想使用 MobileServiceClient.RefreshUserAsync 方法刷新 token 。异常 '刷新失败,出现 403 禁止错误。刷新 token 已被撤销或过期。发生。 mobile apps with azure, refresh tokens

最佳答案

return await client.LoginAsync(
_mainActivity, MobileServiceAuthenticationProvider.Google, "myjobdiary", new Dictionary<string, string>
{
{ "access_type", "offline" },
{ "prompt", "consent" }
});

关于c# - 刷新失败,出现 403 禁止错误。刷新 token 已被撤销或过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52624991/

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