我可以获取用户名、ID、帐户 ID 等(Microsoft 帐户)。但我无法获取用户个人资料图片。
获取访问令牌后,您可以通过另一个直播 api 获取用户头像:
private async void GetUserProfileImageAsync(String token)
{
var photoApi = new Uri(@"https://apis.live.net/v5.0/me/picture?access_token=" + token);
using (var client = new HttpClient())
{
var photoResult = await client.GetAsync(photoApi);
using (var imageStream = await photoResult.Content.ReadAsStreamAsync())
{
BitmapImage image = new BitmapImage();
using (var randomStream = imageStream.AsRandomAccessStream())
{
await image.SetSourceAsync(randomStream);
myProfile.Source = image;
myProfile.Width = image.PixelWidth;
myProfile.Height = image.PixelHeight;
}
}
}
}
和 XAML:
<Image Name="myProfile"/>
注意: Live API 已被OneDrive API取代。因此强烈建议您在开发过程中使用 OneDrive API 而不是 Live API。