【问题标题】:Retrieve contacts along with profile pic in batches using Graph API使用 Graph API 批量检索联系人和个人资料图片
【发布时间】:2020-01-03 06:57:30
【问题描述】:

通过下面的查询,我们可以使用 Microsoft Graph 获取联系人的个人资料图片:

https://graph.microsoft.com/v1.0/users/{user-name}/contacts/{id}/photo/$value

使用上述查询检索大量联系人需要更长的时间。有没有办法批量检索联系人和头像?

在以下批量请求的帮助下,联系人以 20(最大)的批量成功获取,但对于个人资料照片,它返回 body。我无法处理此 body 内容。有没有办法把这个body处理成image可以处理的格式。

任何 C# API(如果有的话)都会很有帮助。

下面是回复。 body 内容没有多大帮助。如何处理?

【问题讨论】:

    标签: c# azure-active-directory microsoft-graph-api microsoft-graph-mail


    【解决方案1】:

    这里的body 是照片的内容,但经过base64 编码。可以直接保存为文件。

    这是来自 Graph API 响应的演示数据:

    使用下面的c#代码将其保存为图片:

    using System;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.IO;
    
    namespace ConsoleApp1
    {
        class Program
        {
            static void Main(string[] args)
            {
                var imgBody = "<body value here>";
                byte[] bytes = Convert.FromBase64String(imgBody);
                using (Image image = Image.FromStream(new MemoryStream(bytes)))
                {
                    image.Save("d:/test.jpg", ImageFormat.Jpeg);
                }
            }
        }
    }
    

    结果:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      • 2016-05-22
      • 1970-01-01
      • 1970-01-01
      • 2012-01-16
      相关资源
      最近更新 更多