我尝试为连接到Azure移动后端服务的移动应用实施Microsoft身份验证,我创建了一个MobileServiceUser用户;然后我尝试使用LoginAsync方法并且已经选择了Micorosft Provider,问题是从哪里可以得到令牌值
user = await App.Client.LoginAsync(MobileServiceAuthenticationProvider.MicrosoftAccount,token< - ????);
我尝试获取有关该信息的信息
谢谢
答案 0 :(得分:0)
不确定您是否得到了此问题的答案,但是您从客户端管理的身份验证中获取了令牌。您可以独立使用每个提供程序API(Facebook,Google,Microsoft,LinkedIn等),然后在使用OAuth对其进行身份验证时,您将获得一个令牌。然后将令牌传递给LoginAsync调用。
以下是一些示例代码:
auth = new OAuth2Authenticator(
clientId: "MyAppId", // For Facebook login, for configure refer http://www.c-sharpcorner.com/article/register-identity-provider-for-new-oauth-application/
scope: "",
authorizeUrl: new Uri("https://m.facebook.com/dialog/oauth/"), // These values do not need changing
redirectUrl: new Uri("http://www.facebook.com/connect/login_success.html")// These values do not need changing
// After facebook,google and all identity provider login completed
auth.Completed += Auth_Completed;
private async void Auth_Completed(object sender, Xamarin.Auth.AuthenticatorCompletedEventArgs e)
{
if (e.IsAuthenticated)
{
string token = e.Account.Properties["access_token"];
}
}
然后在LoginAsync方法中传递此标记。