【发布时间】:2017-12-28 02:31:20
【问题描述】:
我按照 auth0 提供的指南进行了身份验证,但我已经厌倦了每次打开应用程序时都必须登录并想要开始存储和利用刷新令牌。但是我似乎无法获得刷新令牌,它始终为空。
在我的 LoginActivity 中,我有以下内容
_client = new Auth0Client(new Auth0ClientOptions
{
Domain = Resources.GetString(Resource.String.auth0_domain),
ClientId = Resources.GetString(Resource.String.auth0_client_id),
//Scope = "offline_access",
Activity = this
});
并像这样处理登录
_authorizeState = await _client.PrepareLoginAsync(new { audience = "myaudience.blahblahblah"});
protected override async void OnNewIntent(Intent intent)
{
base.OnNewIntent(intent);
var loginResult = await _client.ProcessResponseAsync(intent.DataString, _authorizeState);
var sb = new StringBuilder();
if (loginResult.IsError)
{
sb.AppendLine($"An error occurred during login: {loginResult.Error}");
}
else
{
var mainActivity = new Intent(this, typeof(MainActivity));
mainActivity.PutExtra("token", loginResult.AccessToken);
StartActivity(mainActivity);
Finish();
}
}
如果我包含范围,那么我会收到一个错误,即响应不包含身份令牌。如果我不包括在内,我就不会获得刷新令牌。
【问题讨论】:
-
您使用的是什么 OAuth-Library?这可能有助于遵循您的流程。