我的Azure帐户中有一个B2C广告设置,并且在我的Xamarin应用程序中,第一页打开了一个浏览器,可让您使用以下方式进行注册/登录:
result = await App.AuthenticationClient
.AcquireTokenInteractive(B2CConstants.Scopes)
.WithPrompt(Microsoft.Identity.Client.Prompt.SelectAccount)
.WithParentActivityOrWindow(App.UIParent)
.ExecuteAsync();
每当我使用此方法注册新用户时,我都会发生两件事
A)创建用户后,该应用程序停止运行。我在Visual Studio中的调试实例停止运行,并且该应用程序只是在空白屏幕上。这是缺少的重定向URL还是什么?
B)我使用(url)/。auth / me获取帐户信息。当我注册一个新帐户时,然后获取访问令牌,并像这样进行HTTPRequest(是的,我打算将defaultHeaders用作我们使用令牌访问api的方式)
ConsumerConstants.Client.DefaultRequestHeaders.Add(HttpRequestHeader.Authorization.ToString(), "Bearer " + accessToken);
var httpRequestMessage = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri(B2CConstants.UserInfoUrl),
Headers =
{
{ HttpRequestHeader.Accept.ToString(), "application/json" },
{ "X-Version", "1" }
},
};
其中UserInfoUrl是我的网站/.auth/me,而accessToken已从我们登录时使用的帐户中传递。
我没有收到错误或失败...给我这个令牌时,我的状态为200 / OK(即使在邮递员中),但是返回值为
[]
这一直是个问题,直到在我的Web浏览器中,我转到url / .auth / me-然后向我显示所有信息,然后在事实发生后只要我使用我的应用程序,便可以正常工作。
这是怎么回事?