Xamarin.forms Xamarin使用令牌形成开放URI
我正在构建一个Xamarin Forms PCL应用程序,并成功通过MSAL验证。我对graph API的REST调用都成功了 我尝试使用令牌在浏览器中打开outlook、yammer或calendar,即不要求用户重新验证 Device.openUri总是将用户发送到一个身份验证页面,这是有意义的,因为我没有随它一起发送令牌 这可能吗?如果是,如何做到 提前谢谢 请添加在Azure中注册应用程序的权限(例如Yammer)。 然后定义范围数组,如下所示Xamarin.forms Xamarin使用令牌形成开放URI,xamarin.forms,Xamarin.forms,我正在构建一个Xamarin Forms PCL应用程序,并成功通过MSAL验证。我对graph API的REST调用都成功了 我尝试使用令牌在浏览器中打开outlook、yammer或calendar,即不要求用户重新验证 Device.openUri总是将用户发送到一个身份验证页面,这是有意义的,因为我没有随它一起发送令牌 这可能吗?如果是,如何做到 提前谢谢 请添加在Azure中注册应用程序的权限(例如Yammer)。 然后定义范围数组,如下所示 string[] Scopes = {
string[] Scopes = { "User.Read", "https://api.yammer.com/user_impersonation" };
然后启动您的PublicClientApplication(PCA)
之后,根据MSAL团队的示例,您需要在登录按钮中添加此代码
try
{
IAccount firstAccount = accounts.FirstOrDefault();
authResult = await App.PCA.AcquireTokenSilent(App.Scopes, firstAccount)
.ExecuteAsync();
/* display info*/
}
catch (MsalUiRequiredException ex)
{
try
{
authResult = await App.PCA.AcquireTokenInteractive(App.Scopes, App.ParentWindow)
.ExecuteAsync();
/* display info*/
}
}
现在,您将获得的代币也将与Yammer一起使用
希望这会有所帮助您找到解决此问题的方法了吗?
try
{
IAccount firstAccount = accounts.FirstOrDefault();
authResult = await App.PCA.AcquireTokenSilent(App.Scopes, firstAccount)
.ExecuteAsync();
/* display info*/
}
catch (MsalUiRequiredException ex)
{
try
{
authResult = await App.PCA.AcquireTokenInteractive(App.Scopes, App.ParentWindow)
.ExecuteAsync();
/* display info*/
}
}