Вызов задания анализа

Инициирование задания анализа осуществляется путем отправки запроса POST на маршрут analyze. Анализ может быть длительным процессом, который обычно длится дольше минуты. API-интерфейс сначала выполняет некоторую базовую проверку, инициирует запрос на сервер, отправляя задание, затем отвечает с кодом состояния 202 и заголовком Location или с соответствующей информацией об ошибке. Значение заголовка Location — это URL-адрес, который можно использовать для проверки состояния запроса и для получения URL-адресов результатов. Существуют различные варианты через действие POST по настройке задания в соответствии с вашими критериями, такими как список правил или наборов правил, файлы, исключаемые из анализа, и многое другое. Вы можете начать анализ, используя следующий [Geographical URL]/api/analyze?api-version=1.0.

Заметка

Рекомендуется подождать от 15 до 60 секунд между проверками состояния. Анализ обычно занимает от 1 до 5 минут.
Для этого API-интерфейса требуется токен OAuth.

Заголовки

Имя (название) Тип Ожидаемое значение Обязательное?
Авторизация string Токен носителя OAuth 1 с утверждением идентификатора приложения Microsoft Entra ID. да
x-ms-tenant-id GUID Идентификатор клиента для приложения. да
x-ms-correlation-id GUID Идентификатор для выполнения анализа. Вы должны предоставить этот же идентификатор для всего выполнения (отправка, анализ, статус). да
Принять объект application/json, application/x-ms-sarif-v2 да
Accept-Language string Код или коды языка (например, en-US). По умолчанию используется en-US. Если предусмотрено несколько языков, первый будет основным. Тем не менее, все переводы (если язык поддерживается) будут включены. нет

Основной текст

Часто используемые параметры:

Свойство Тип Ожидаемое значение Обязательное?
sasUriList массив строк Список URI-адресов, которые предоставляют службе доступ для загрузки одного решения, ZIP-файла, содержащего несколько файлов решений, или пакета. Да
ruleSets массив пользовательских 0 и более Нет
ruleSets.id guid Идентификатор набора правил, который можно найти, обратившись к API набора правил. Нет, но это обычно то, что вы хотели бы использовать. Вы должны использовать это или ruleCodes.
ruleCodes.code string Идентификатор требуемого правила, который можно найти, обратившись к API-интерфейсам набора правил или правила. Нет, вы должны использовать это или ruleSets.
fileExclusions массив строк Список имен файлов или шаблонов имен файлов для исключения. Существует поддержка использования "*" в качестве подстановочного знака в начале и/или конце имени файла (например, *jquery.dll и *jquery*). No

Ожидаемые ответы

Код состояния HTTP Сценарий Result
202 Запрос на анализ принят, и URI-адрес проверки статуса был возвращен в заголовке Location Нет текста результатов
400 Файл не в формате ZIP отправлен, неверные параметры или файл был включен с вирусом Нет текста результатов
409 Запрос с дублирующим значением заголовка x-ms-correlation-id был отправлен Нет текста результатов

Ожидаемые заголовки ответа

Имя (название) Тип Ожидаемое значение Обязательное?
Местоположение URI-адрес URL-адрес для использования при запросе текущего статуса и для получения результатов да

Пример: начало анализа

Это пример запуска задания анализа с набором правил Сертификация AppSource, одним файлом и исключая файлы, содержащие текст jquery и json в имени.

Запрос

POST [Geographical URI]/api/analyze?api-version=1.0
Accept: application/json
Content-Type: application/json; charset=utf-8
x-ms-correlation-id: 9E378E56-6F35-41E9-BF8B-C0CC88E2B832
x-ms-tenant-id: F2E60E49-CB87-4C24-8D4F-908813B22506

{
    "ruleSets": [{
        "id": "0ad12346-e108-40b8-a956-9a8f95ea18c9"
    }],
    "sasUriList": ["https://testenvfakelocation.blob.core.windows.net/mySolution.zip"],
    "fileExclusions": ["*jquery*", "*json*"]
}

Response

HTTP/1.1 202 Accepted
Content-Type: application/json; charset=utf-8
Location: [Geographical URI]/api/status/9E378E56-6F35-41E9-BF8B-C0CC88E2B832&api-version=1.0

См. также

Использование веб-API средства проверки Power Apps
Получение списка наборов правил
Получение списка правил
Отправка файла
Проверка состояния задания анализа