Я пытаюсь создать демон с помощью Microsoft Graph API v1.0.
Я зарегистрировал свое приложение с разрешением приложения Calendars.ReadWrite и User.Read.All с предоставленным согласием администратора.
Я правильно получаю токен доступа и вызываю GetUserId, который возвращает идентификатор пользователя для настройки requestURI.
После этого я хочу получить календарь Outlook:
var id = await GetUserId(result.AccessToken);
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
String requestURI = $"https://graph.microsoft.com/v1.0/users/{id}/calendars";
var response = await httpClient.GetAsync(requestURI);
var responseString = await response.Content.ReadAsStringAsync();
но я получаю эту ошибку:
{
"error": {
"code": "ResourceNotFound",
"message": "Resource could not be discovered.",
"innerError": {
"request-id": "5ecd547b-9281-4824-94e5-095691e759aa",
"date": "2020-01-14T16:44:16"
}
}
}
Когда я устанавливаю requestURI для пользователей/{id или организации, запрос работает нормально, но добавление /calendars, /events или /mailFolder приводит к указанной выше ошибке.
Думаю, моя проблема в том, что я использовал Личный кабинет. Нужно ли мне использовать рабочую или учебную учетную запись? Можно ли использовать Личный кабинет? Есть ли другая причина моей ошибки?
Обновление: код для получения токена:
app = ConfidentialClientApplicationBuilder
.Create(ClientId)
.WithClientSecret(ClientSecret)
.WithAuthority($"https://login.microsoftonline.com/{Tena ... rosoft.com")
.Build();
string[] scopesClient =
new string[] { $"https://graph.microsoft.com/.default" };
AuthenticationResult result = null;
try
{
result = await app.AcquireTokenForClient(scopesClient).ExecuteAsync();
}
catch (MsalServiceException ex) when(ex.Message.Contains("AADSTS70011"))
{
}
Подробнее здесь: https://stackoverflow.com/questions/597 ... -could-not
Демон Microsoft Graph API — ошибка: сообщение ResourceNotFound: ресурс не найден ⇐ C#
Место общения программистов C#
1772650880
Anonymous
Я пытаюсь создать демон с помощью Microsoft Graph API v1.0.
Я зарегистрировал свое приложение с разрешением приложения Calendars.ReadWrite и User.Read.All с предоставленным согласием администратора.
Я правильно получаю токен доступа и вызываю GetUserId, который возвращает идентификатор пользователя для настройки requestURI.
После этого я хочу получить календарь Outlook:
var id = await GetUserId(result.AccessToken);
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
String requestURI = $"https://graph.microsoft.com/v1.0/users/{id}/calendars";
var response = await httpClient.GetAsync(requestURI);
var responseString = await response.Content.ReadAsStringAsync();
но я получаю эту ошибку:
{
"error": {
"code": "ResourceNotFound",
"message": "Resource could not be discovered.",
"innerError": {
"request-id": "5ecd547b-9281-4824-94e5-095691e759aa",
"date": "2020-01-14T16:44:16"
}
}
}
Когда я устанавливаю requestURI для пользователей/{id или организации, запрос работает нормально, но добавление /calendars, /events или /mailFolder приводит к указанной выше ошибке.
Думаю, моя проблема в том, что я использовал Личный кабинет. Нужно ли мне использовать рабочую или учебную учетную запись? Можно ли использовать Личный кабинет? Есть ли другая причина моей ошибки?
Обновление: код для получения токена:
app = ConfidentialClientApplicationBuilder
.Create(ClientId)
.WithClientSecret(ClientSecret)
.WithAuthority($"https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/token&grant_type=client_credentials&resource=https://graph.microsoft.com")
.Build();
string[] scopesClient =
new string[] { $"https://graph.microsoft.com/.default" };
AuthenticationResult result = null;
try
{
result = await app.AcquireTokenForClient(scopesClient).ExecuteAsync();
}
catch (MsalServiceException ex) when(ex.Message.Contains("AADSTS70011"))
{
}
Подробнее здесь: [url]https://stackoverflow.com/questions/59738883/microsoft-graph-api-daemon-error-resourcenotfound-message-resource-could-not[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия