Следуя инструкциям на https://docs.microsoft.com/en-us/sharepoint/dev/spfx/use-aad-tutorial#DeploymentAndPermissionsGrant,, моя веб-часть SharePoint сталкивается с ошибкой, когда я пытаюсь получить что-либо, кроме базовых полей.
Например, этот вызов работает:
https://graph.microsoft.com/v1.0/users?$select=displayName,mail,userPrincipalName
Тем не менее, этот вызов приводит к 501 Not Implemented
исключению, сообщающему, "Эта цель операции еще не поддерживается."
https://graph.microsoft.com/v1.0/users?$select=displayName,mail,userPrincipalName,hireDate
В моем пакете-solution.json:
"webApiPermissionRequests": [
{
"resource": "Microsoft Graph",
"scope": "User.Read.All"
}
]
Сценарий вызова очень прост, т.е.
this.context.msGraphClientFactory
.getClient()
.then((client: MSGraphClient): void => {
// From https://github.com/microsoftgraph/msgraph-sdk-javascript sample
client
.api("users")
.version("v1.0")
.select("displayName,mail,userPrincipalName,hireDate")
Я уже одобрил доступ через страницу /_layouts/15/online/AdminHome.aspx#/webApiPermissionManagement
:
![enter image description here](https://i.stack.imgur.com/GnRzH.png)
Обновление: Я также пытался обновить мой " package-solution.json", чтобы использовать значение Microsoft.Azure.AgregatorService вместо Microsoft Graph", но при попытке утвердить разрешение на на странице управления API (скриншот выше) я получаю эту ошибку:
[HTTP]: 400 - [CorrelationId]: 5134e69e-f000-8000-b901-2a4b8bab60b8 [Версия]: 16.0.0.8929 - Не удалось найти субъект-службу с именем Microsoft.Azure.AgregatorService.
Имя параметра: имя_ресурса
Я также не вижу разрешений, которые я утвердил в разделе Расширение клиента SharePoint Online - разрешения на портале Azure (не уверен, должен ли я, но я просто хотел упомянуть об этом!).
![enter image description here](https://i.stack.imgur.com/K8Ojv.png)
Это мой request-id
, если это поможет кому-то из Microsoft выяснить, что может происходить!
ed3ff30c-d552-462e-be70-c69a19275049