Kiểm tra trạng thái phân tích
Một URL được trả lại như là một phần của tiêu đề Location
để đáp ứng yêu cầu đến API analyze
. URL được sử dụng để truy vấn qua HTTP GET
cho trạng thái công việc phân tích. Khi công việc phân tích kết thúc, phần phản hồi sẽ bao gồm URL hoặc danh sách các URL trong đó kết quả đầu ra có thể được tải xuống. Tiếp tục gọi URI này cho đến khi mã trạng thái HTTP 200 được trả về. Trong khi công việc vẫn đang chạy, mã trạng thái HTTP 202 sẽ được trả về cùng với tiêu đề Location
chứa cùng URI này được trả về từ analyze
. Khi phản hồi 200 được trả về, thuộc tính resultFileUris
sẽ bao gồm một vị trí hoặc danh sách các vị trí có thể tải xuống của đầu ra, được chứa trong một tệp zip. Một tệp có Định dạng trao đổi kết quả phân tích tĩnh (SARIF) V2 được bao gồm trong phần tải xuống zip này là một tệp định dạng JSON
chứa kết quả phân tích. Phần phản hồi sẽ chứa một đối tượng IssueSummary
có chứa một bản tóm tắt về số lượng các vấn đề được tìm thấy.
Lưu ý
Bạn nên đợi từ 15 đến 60 giây giữa các lần kiểm tra trạng thái. Phân tích thường mất từ 1 đến 5 phút để chạy.
API này yêu cầu một OAuth mã thông báo phải là mã thông báo cho cùng một ứng dụng khách hàng đã khởi tạo công việc phân tích.
Tiêu đề
Tên | Loại | Giá trị mong đợi | Bắt buộc? |
---|---|---|---|
Ủy quyền | string | Mã thông báo mang OAuth 1 với yêu cầu về ID ứng dụng. Microsoft Entra | có |
x-ms-tenant-id | GUID | ID của đối tượng thuê cho ứng dụng. | có |
x-ms-correlation-id | GUID | Mã định danh để chạy phân tích. Bạn nên cung cấp cùng một ID cho toàn bộ thực thi (tải lên, phân tích, trạng thái) | có |
Phản hồi mong đợi
Mã trạng thái HTTP | Kịch bản | Kết quả |
---|---|---|
200 | Đã tìm thấy một hoặc nhiều kết quả | Xem ví dụ dưới đây. Một kết quả sẽ được trả lại. |
202 | Vẫn đang xử lý | Xem ví dụ dưới đây. Một kết quả sẽ được trả lại. |
403 | Bị cấm | Người yêu cầu không giống như người khởi tạo yêu cầu phân tích. |
404 | Không tìm thấy | Không thể tìm thấy yêu cầu phân tích với tham chiếu được cung cấp trong URL. |
Tiêu đề phản hồi dự kiến
Tên | Loại | Giá trị mong đợi | Bắt buộc? |
---|---|---|---|
Vị trí | uri | URI để sử dụng trong truy vấn trạng thái hiện tại và để có được kết quả | có |
Nội dung phản hồi mong đợi
Bảng sau đây phác thảo cấu trúc của phản hồi cho từng yêu cầu (chỉ với phản hồi HTTP 200 hoặc 202).
Thuộc tính | Loại | Giá trị mong đợi | Bắt buộc? |
---|---|---|---|
privacyPolicy | string | URI của chính sách bảo mật. | Có |
tiến trình: | int | Giá trị nằm trong khoảng từ 0 đến 100%, trong đó 10 có nghĩa là quá trình xử lý đã hoàn thành khoảng 10%. | Có |
runCorrelationId | GUID | Mã định danh yêu cầu được bao gồm trong mỗi yêu cầu. Điều này có thể được sử dụng để tương quan với yêu cầu, nếu cần. | Có |
trạng thái | string | InProgress được trả về khi công việc vẫn đang được xử lý. Failed được trả về khi có sự cố nghiêm trọng xảy ra khi xử lý công việc trên máy chủ. Cần có thêm chi tiết trong thuộc tính lỗi. Finished được trả về khi công việc đã hoàn thành thành công mà không có vấn đề gì. FinishedWithErrors được trả về khi công việc đã hoàn thành thành công, tuy nhiên, một hoặc nhiều quy tắc không hoàn thành mà không có lỗi. Đây hoàn toàn chỉ là một tín hiệu để bạn biết rằng báo cáo có thể chưa hoàn thành. Microsoft nhận thức được những vấn đề này ở phía sau và sẽ nỗ lực chẩn đoán và giải quyết vấn đề. |
Có |
resultFileUris | mảng dây | Một danh sách các URI cho phép tải xuống trực tiếp đầu ra. Cần có một URI cho mỗi tệp được bao gồm trong lệnh gọi API phân tích ban đầu. | Không. Điều này chỉ được bao gồm khi xử lý đã hoàn thành. |
issueSummary | IssueSummary | Thuộc tính được liệt kê dưới đây | Không. Điều này chỉ được bao gồm khi xử lý đã hoàn thành. |
issueSummary.criticalIssueCount | int | Số lượng vấn đề được xác định có mức độ nghiêm trọng rất cao trong kết quả | Có |
issueSummary.highIssueCount | int | Số lượng vấn đề được xác định có mức độ nghiêm trọng cao trong kết quả | Có |
issueSummary.mediumIssueCount | int | Số lượng vấn đề được xác định có mức độ nghiêm trọng trung bình trong kết quả | Có |
issueSummary.lowIssueCount | int | Số lượng vấn đề được xác định có mức độ nghiêm trọng thấp trong kết quả | Có |
issueSummary.informationalIssueCount | int | Số lượng vấn đề được xác định có mức độ nghiêm trọng mang tính thông báo trong kết quả | Có |
Ví dụ: kiểm tra trạng thái khi hoàn thành
Ví dụ này đưa ra một cuộc gọi kiểm tra trạng thái với kết quả là hoàn thành.
Lời yêu cầu
GET [Geographical URI]/api/status/9E378E56-6F35-41E9-BF8B-C0CC88E2B832&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
phản hồi
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":"9E378E56-6F35-41E9-BF8B-C0CC88E2B832","status":"Finished","issueSummary":
{
"informationalIssueCount":0,
"lowIssueCount":0,
"mediumIssueCount":302,
"highIssueCount":30,
"criticalIssueCount":0
}
}
Xem thêm
Sử dụng API web kiểm tra Power Apps
Lấy danh sách các bộ quy tắc
Lấy danh sách các quy tắc
Tải lên một tập tin
Gọi phân tích