Поделиться через


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

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

Заметка

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

Заголовки

Полное имя Type Ожидаемое значение Обязательное?
Авторизация string OAuth 1 токен на предъявителя с Microsoft Entra заявкой на идентификатор приложения. yes
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*). нет

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

Код состояния 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: aaaa0000-bb11-2222-33cc-444444dddddd
x-ms-tenant-id: aaaabbbb-0000-cccc-1111-dddd2222eeee

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

ответ

HTTP/1.1 202 Accepted
Content-Type: application/json; charset=utf-8
Location: [Geographical URI]/api/status/aaaa0000-bb11-2222-33cc-444444dddddd&api-version=1.0

См. также

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