我有一个要求,我需要通过Office 365帐户和批量的谷歌搜索后发送邮件 . 我发现了这个Microsoft Graph Unified API解决方案 . Office 365 Connect ASP.NET MVC sample using Microsoft Graph

Graph使用以下API发送电子邮件https://graph.microsoft.com/v1.0/me/microsoft.graph.sendmail

以下是调用API的代码

using (var client = new HttpClient())
                {
                    using (var request = new HttpRequestMessage(HttpMethod.Post, SendMessageUrl))
                    {
                        request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

                        string content = @"{
  ""message"": {
    ""subject"": ""Meet for lunch?"",
    ""body"": {
      ""contentType"": ""Text"",
      ""content"": ""The new cafeteria is open.""
    },
    ""toRecipients"": [
      {
        ""emailAddress"": {
          ""address"": ""myemailaddress""
        }
      }
    ]
  },
  ""saveToSentItems"": ""false""
}";
                        request.Content = new StringContent(content, Encoding.UTF8, "application/json");
                        using (HttpResponseMessage response = await client.SendAsync(request))
                        {
                            if (response.IsSuccessStatusCode)
                            {
                                sendMessageResponse.Status = SendMessageStatusEnum.Sent;
                                sendMessageResponse.StatusMessage = null;
                            }
                            else
                            {
                                sendMessageResponse.Status = SendMessageStatusEnum.Fail;
                                sendMessageResponse.StatusMessage = response.ReasonPhrase;
                            }
                        }
                    }
                }

但每次我的请求失败的原因都是“ Internal Server Error

我很困惑,如果这是API的问题或我的结果有什么不对 .