Почему в Microsoft Graph API возникает ошибка шлюза 504? - PullRequest
1 голос
/ 02 июля 2019

Когда я пытался получить 1000 потоков группы, используя Microsoft Graph API на PowerShell, происходит ошибка шлюза 504. Код останавливается.

Но если я повторно выполню код без каких-либо изменений, он будет работать хорошо,Почему это происходит и как мне избежать этой проблемы?

$apiUrl53 = "https://graph.microsoft.com/beta/groups/" + $groups.id + "/threads?top=1000"
    $Data = Invoke-WebRequest -Headers $global:__authHeader -Uri $apiUrl53 -Method Get

Сообщение об ошибке:

 + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

1 Ответ

0 голосов
/ 18 июля 2019

Есть ли какая-либо причина, по которой вы пытаетесь получить первую 1000?

Вы можете, например, «пролистать» группы в записях по 100, так что вы не возвращаете такую ​​огромную полезную нагрузку за один раз.ответ.

Это отличное видео, показывающее, как использовать скиптокен https://docs.microsoft.com/en-us/graph/paging?context=graph%2Fapi%2F1.0&view=graph-rest-1.0

Например, следующий URL-адрес запрашивает всех пользователей в организации с указанным размером страницы 5с параметром запроса $ top:

https://graph.microsoft.com/v1.0/users?$top=100

Если в результате содержится более пяти пользователей, Microsoft Graph вернет свойство @odata: nextLink, аналогичное следующему, вместе с первой страницей пользователей.

"@odata.nextLink": "https://graph.microsoft.com/v1.0/users?$top=100&$skiptoken=X%274453707 ... 6633B900000000000000000000%27"

Чтобы получить следующую страницу результатов, отправьте значение URL свойства @odata: nextLink в Microsoft Graph.

https://graph.microsoft.com/v1.0/users?$top=100&$skiptoken=X%274453707 ... 6633B900000000000000000000%27

Microsoft Graph продолжит возвращать ссылку на следующеестраница данных в свойстве @odata: nextLink с каждым ответом до тех пор, пока не будут прочитаны все страницы результата.

...