Auth0和Xamarin如何使用刷新令牌

时间:2016-10-27 19:28:47

标签: ios xamarin.ios auth0

我正在使用Xamarin.iOS应用中的Auth0。目前,我使用此代码验证用户:

var user = await auth0.LoginAsync(this, "facebook", true);

如何使用将来返回的刷新令牌。目前我必须每次运行此代码。我查看了Auth0上的文档,但是我找不到任何显示如何使用刷新令牌的内容。

完整代码如下所示:

public override void ViewDidLoad()
    {
        base.ViewDidLoad();

        LinkedInLoginButton.TouchUpInside += (sender, e) => {
            Login("linkedin", sender);
            };
        FacebookLoginButton.TouchUpInside += (sender, e) =>{
            Login("facebook", sender);
            };

    }

public async void Login(string provider, object sender)
    {
        var user = await auth0.LoginAsync(this, provider, true);
    }

1 个答案:

答案 0 :(得分:2)

该方法取决于token_id是否已过期。 检查id_token是否已过期

bool expired = auth0.HasTokenExpired();

如果已登录用户的令牌尚未过期,则续订id_token

var renew = await auth0.RenewIdToken(optional options);

使用登录时收到的refresh_token刷新id_token

var result = await auth0.RefreshToken(refreshToken);

这里还有好样本: https://github.com/auth0/Xamarin.Auth0Client/blob/master/samples/Auth0Client.iOS.Sample/Auth0Client_iOS_SampleViewController.cs