Microsoft Graph API, отправка ответа по электронной почте: StatusCode: 401 ReasonPhrase: «Unauthorized» - PullRequest
0 голосов
/ 05 сентября 2018

Я пытаюсь отправить электронное письмо с помощью Microsoft Graph API и получить следующий ответ:

StatusCode: 401, ReasonPhrase: 'Unauthorized'...

Я пытаюсь выяснить, есть ли что-то не так с моим кодом, или если учетная запись пользователя не имеет разрешений.

Вот код ниже:

string accessToken = GetADToken();
string graphRequest = "https://graph.microsoft.com/v1.0/me/sendMail";

HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", accessToken);
client.DefaultRequestHeaders.Accept
    .Add(new MediaTypeWithQualityHeaderValue("application/json"));

var email = new {
    message = new {
    subject = "test subject",
    body = new {
    contentType = "Text",
    content = "The cafeteria is open"
    },
    toRecepients = new List<object> {
    new {
    emailAddress = new {
    address = "test.user@emailprovider.com"
    }
    }
    },
    ccRecipients = new List<object> {
    new {
    emailAddress = new {
    address = "test.user@emailprovider.com"
    }
    }
    }
    },
    saveToSentItems = false
};

string requestContent = JsonConvert.SerializeObject(email);
var buffer = Encoding.UTF8.GetBytes(requestContent);
var byteContent = new ByteArrayContent(buffer);
byteContent.Headers.ContentType = new System.Net
    .Http.Headers.MediaTypeHeaderValue("application/json");

var response = client.PostAsync(graphRequest, byteContent).Result;

return response;

Буду признателен за помощь в получении кода для отправки электронных писем через график API

.

1 Ответ

0 голосов
/ 06 сентября 2018

Если вы используете MVC, вы можете проверить область действия в следующем коде (файл Web.Config)

  <add key="ida:GraphScopes" value="Mail.Send"/> 

Если вы используете NETCore, вы можете проверить область действия в следующем коде (appsettings.json)

 "GraphScopes": "Mail.Send"

Мы предлагаем вам начать отправку письма: https://github.com/microsoftgraph/aspnet-connect-rest-sample

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...