Location API에 대한 요청의 응답으로 URL이 analyze 헤더의 일부로 반환됩니다. 분석 작업의 상태에 대해 HTTP GET을 통해 쿼리하는 데 사용됩니다. 분석 작업이 완료되면 응답 본문에 결과 출력을 다운로드할 수 있는 URL 또는 URL 목록이 포함됩니다. HTTP 상태 코드 200이 반환될 때까지 이 URI를 계속 호출합니다. 작업이 여전히 실행되는 동안, Location에서 반환된 동일한 URI를 포함하는 analyze 헤더와 함께 HTTP 상태 코드 202가 반환됩니다. 200 응답이 반환되면 resultFileUris 속성은 zip 파일에 포함된 출력의 단일 또는 다운로드 가능한 위치 목록을 포함합니다.
SARIF(Static Analysis Results Interchange Format) V2 형식의 파일이 분석 결과를 포함하는 JSON 형식의 파일이 zip 다운로드에 포함되어 있습니다. 응답 본문에는 발견된 문제 수에 대한 요약이 포함된 IssueSummary 개체가 포함됩니다.
노트
상태 확인 사이에 15초에서 60초 사이를 기다리는 것이 좋습니다. 분석은 일반적으로 실행하는 데 1 ~ 5분이 걸립니다.
이 API에는 분석 작업을 시작한 동일한 클라이언트 애플리케이션에 대한 토큰이어야 하는 OAuth 토큰이 필요합니다.
머리글
| 입력 | Type | 예상 값 | 필수 여부 |
|---|---|---|---|
| 권한 부여 | string | OAuth 1개의 베어러 토큰과 Microsoft Entra 애플리케이션 ID 클레임. | yes |
| x-ms-tenant-id | GUID | 애플리케이션 테넌트의 ID입니다. | yes |
| x-ms-correlation-id | GUID | 분석 실행의 식별자입니다. 전체 실행(업로드, 분석, 상태)에 동일한 ID를 제공해야 합니다. | yes |
예상 응답
| HTTP 상태 코드 | 시나리오 | 결과 |
|---|---|---|
| 200 | 하나 이상의 결과가 발견되었습니다 | 아래 예제를 참조하세요. 하나의 결과가 반환됩니다. |
| 202 | 아직 처리 중 | 아래 예제를 참조하세요. 하나의 결과가 반환됩니다. |
| 403 | 금지 | 요청자는 분석 요청의 작성자와 동일하지 않습니다. |
| 404 | 없습니다. | URL에 제공된 참조가 있는 분석 요청을 찾을 수 없습니다. |
예상 응답 헤더
| 입력 | Type | 예상 값 | 필수 여부 |
|---|---|---|---|
| 위치 | uri | 현재 상태를 쿼리하고 결과를 얻는 데 사용할 URI | yes |
예상 응답 본문
다음 표는 각 요청에 대한 응답 구조를 요약한 것입니다(HTTP 200 또는 202 응답만).
| 속성 | Type | 예상 값 | 필수 여부 |
|---|---|---|---|
| privacyPolicy | string | 개인 정보 보호 정책의 URI입니다. | 예 |
| 진행률 | int | 0-100% 완료 범위의 값입니다. 여기서 10은 처리가 약 10% 완료되었음을 의미합니다. | 예 |
| runCorrelationId | GUID | 각 요청에 포함된 요청 식별자입니다. 필요한 경우 요청과 상관시키는 데 사용할 수 있습니다. | 예 |
| 상태 | string |
InProgress 작업이 아직 처리 중일 때 반환됩니다.
Failed 서버에서 작업을 처리하는 동안 심각한 문제가 발생한 경우 반환됩니다. 오류 속성에 자세한 내용이 있어야 합니다.
Finished 작업이 문제 없이 성공적으로 완료되면 반환됩니다.
FinishedWithErrors 작업이 성공적으로 완료되었지만 하나 이상의 규칙이 오류 없이 완료되지 못한 경우 반환됩니다. 이는 전적으로 보고서가 완전하지 않을 수 있음을 알리는 신호입니다. Microsoft는 백엔드에서 이러한 문제를 알고 있으며 진단 및 해결을 위해 노력할 것입니다. |
예 |
| resultFileUris | 문자열 배열 | 출력을 직접 다운로드할 수 있는 URI 목록입니다. 원래 분석 API 호출에 포함된 파일 당 하나가 있어야 합니다. | 아니요. 처리가 완료된 경우에만 포함됩니다. |
| issueSummary | IssueSummary | 아래에 나열된 속성 | 아니요. 처리가 완료된 경우에만 포함됩니다. |
| issueSummary.criticalIssueCount | int | 결과에 중대한 심각성을 갖는 것으로 확인된 문제 수 | 예 |
| issueSummary.highIssueCount | int | 결과에 높은 심각성을 갖는 것으로 확인된 문제 수 | 예 |
| issueSummary.mediumIssueCount | int | 결과에 중간 심각성을 갖는 것으로 확인된 문제 수 | 예 |
| issueSummary.lowIssueCount | int | 결과에 낮은 심각성을 갖는 것으로 확인된 문제 수 | 예 |
| issueSummary.informationalIssueCount | int | 결과에 정보 심각성을 갖는 것으로 확인된 문제 수 | 예 |
예: 완료시 상태 확인
이 예제는 상태 확인 호출을 발행하고 결과는 완료입니다.
Request
GET [Geographical URI]/api/status/aaaa0000-bb11-2222-33cc-444444dddddd&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
Response
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"privacyPolicy":"https://go.microsoft.com/fwlink/?LinkID=310140",
"progress":100,
"resultFileUris":["https://fakeblob.blob.core.windows.net/report-files/mySolution.zip?sv=2017-11-09&sr=b&sig=xyz&se=2019-06-11T20%3A27%3A59Z&sp=rd"],"runCorrelationId":"aaaa0000-bb11-2222-33cc-444444dddddd","status":"Finished","issueSummary":
{
"informationalIssueCount":0,
"lowIssueCount":0,
"mediumIssueCount":302,
"highIssueCount":30,
"criticalIssueCount":0
}
}
참조
Power Apps 체커 웹 API를 사용하세요
규칙 세트의 목록 검색
규칙 목록 검색
파일 업로드
분석 호출