Gọi phân tích

Bắt đầu một công việc phân tích được thực hiện bằng cách gửi một yêu cầu POST đến định tuyến analyze. Phân tích có thể là một quá trình chạy dài thường kéo dài hơn một phút. Trước tiên, API thực hiện một số xác thực cơ bản, bắt đầu yêu cầu trên phần phụ trợ bằng cách gửi công việc và sau đó trả lời bằng mã trạng thái 202 và tiêu đề Location hoặc với các chi tiết lỗi thích hợp. Giá trị tiêu đề Location là một URL có thể được sử dụng để kiểm tra trạng thái của yêu cầu và để có được (các) URL của (các) kết quả. Có nhiều lựa chọn khác nhau thông qua hành động POST để điều chỉnh công việc dựa trên các tiêu chí của bạn, chẳng hạn như danh sách các quy tắc hoặc bộ quy tắc, các tệp để loại trừ khỏi phân tích, v.v. Bạn có thể bắt đầu phân tích bằng cách sử dụng [Geographical URL]/api/analyze?api-version=1.0 sau.

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ã thông báo OAuth.

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 có xác nhận quyền sở hữu ID ứng dụng Microsoft Entra ID.
x-ms-tenant-id GUID ID của đối tượng thuê cho ứng dụng.
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).
Chấp nhận đối tượng application/json, application/x-ms-sarif-v2
Ngôn ngữ chấp nhận string Mã ngôn ngữ hoặc mã (ví dụ: en-US). Mã mặc định là en-US. Nếu nhiều ngôn ngữ được cung cấp, ngôn ngữ đầu tiên sẽ là ngôn ngữ chính. Tuy nhiên, tất cả các bản dịch (nếu ngôn ngữ được hỗ trợ) sẽ được bao gồm. không

Nội dung

Các tùy chọn thường được sử dụng:

Thuộc tính Loại Giá trị mong đợi Bắt buộc?
sasUriList mảng dây Danh sách các URI cung cấp quyền truy cập dịch vụ để tải xuống một giải pháp, tệp zip chứa nhiều tệp giải pháp hoặc gói. Có
ruleSets mảng tùy chỉnh 0 trở lên Không
ruleSets.id guid ID của bộ quy tắc, có thể được tìm thấy bằng cách truy vấn API bộ quy tắc. Không, nhưng đây thường là những gì bạn muốn sử dụng. Bạn phải sử dụng tùy chọn này hoặc ruleCodes.
ruleCodes.code string ID của bộ quy tắc mong muốn, có thể được tìm thấy bằng cách truy vấn API bộ quy tắc và quy tắc. Không, bạn phải sử dụng tùy chọn này hoặc ruleSets.
fileExclusions mảng dây Một danh sách các tên tệp hoặc các mẫu tên tệp để loại trừ. Có hỗ trợ để sử dụng "*" làm ký tự đại diện ở đầu và/hoặc cuối của tên tệp (ví dụ: *jquery.dll và *jquery*). No

Phản hồi mong đợi

Mã trạng thái HTTP Kịch bản Kết quả
202 Yêu cầu phân tích đã được chấp nhận và URI kiểm tra trạng thái đã được trả lại trong tiêu đề Location Không có nội dung kết quả
400 Một tệp không nén đã được gửi, tham số không chính xác hoặc tệp chứa vi-rút Không có nội dung kết quả
409 Một yêu cầu có giá tiêu đề x-ms-correlation-id trùng lặp đã được gửi Không có nội dung kết quả

Tiêu đề phản hồi dự kiến

Tên Loại Giá trị mong đợi Bắt buộc?
Vị trí URI URL để sử dụng trong truy vấn trạng thái hiện tại và để có được kết quả

Ví dụ: bắt đầu phân tích

Đây là một ví dụ về việc bắt đầu một công việc phân tích với bộ quy tắc Chứng nhận AppSource, một tệp duy nhất và loại trừ các tệp có chứa văn bản jqueryjson trong tên.

Yêu cầu

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*"]
}

Câu trả lời

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

Xem thêm

Sử dụng API web trình kiểm tra Power Apps
Truy xuất danh sách các bộ quy tắc
Truy xuất danh sách các quy tắc
Tải tệp lên
Kiểm tra trạng thái phân tích