Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Обработка кода состояния с помощью
Функция Web.Contents имеет некоторые встроенные функции для работы с определенными кодами состояния HTTP. Поведение по умолчанию можно переопределить в расширении с помощью ManualStatusHandling поля в записи параметров.
Автоматическая повторная попытка
Web.Contents будет автоматически повторять запросы, которые завершаются сбоем с одним из следующих кодов состояния:
| Code | Состояние |
|---|---|
| 408 | Истекло время ожидания запроса |
| 429 | Слишком много запросов |
| 503 (Сервис временно недоступен) | Служба недоступна |
| 504 | Время ожидания шлюза |
| 509 | Превышено ограничение пропускной способности |
Запросы будут повторяться до трех раз до момента отказа. Подсистема использует экспоненциальный алгоритм бэк-офф, чтобы определить, сколько времени ждать до следующей повторной попытки, если ответ содержит Retry-after заголовок. При обнаружении заголовка движок будет ожидать указанного количества секунд до следующей попытки повторного выполнения. Минимальное поддерживаемое время ожидания — 0,5 секунды, а максимальное значение — 120 секунд.
Замечание
Значение Retry-after должно быть в delta-seconds формате. В настоящее время формат HTTP-date не поддерживается.
Исключения проверки подлинности
Следующие коды состояния приводят к исключению, связанному с учётными данными, вызывая запрос аутентификации, который просит пользователя предоставить учётные данные (или повторно войти в случае с истекшим сроком действия маркером OAuth).
| Code | Состояние |
|---|---|
| 401 | Не авторизовано |
| Ошибка 403: Доступ запрещён | Запрещено |
Замечание
Расширения могут использовать ManualStatusHandling опцию с кодами состояния 401 и 403, что нельзя сделать в Web.Contents вызовах за пределами пользовательского соединителя данных (то есть напрямую из Power Query).
Redirection
Следующие коды состояния приводят к автоматическому перенаправлению в универсальный код ресурса (URI), указанный в заголовке Location . Отсутствующий Location заголовок приведет к ошибке.
| Code | Состояние |
|---|---|
| 300 | Несколько вариантов |
| 301 | Перемещено навсегда |
| 302 | найден |
| 303 | См. другое |
| 307 | Временное перенаправление |
Замечание
Только код состояния 307 будет хранить POST метод запроса. Все остальные коды состояния перенаправления приводят к GETпереключении на .