Xác thực yêu cầu Cloud có kiểu
Dùng Altifigence CLI để kiểm tra cục bộ yêu cầu dự án, thành viên, nguồn hoặc không gian làm việc và xem trước yêu cầu có kiểu.
Dùng Altifigence CLI 0.1.9 trên Linux để xác thực tài liệu yêu cầu có kiểu và xem xét phương thức, đường dẫn, tiêu đề và nội dung yêu cầu.
Chuẩn bị yêu cầu
Lưu ví dụ này thành request.json:
{
"schema": "altifigence.dds.cloud-request.v1",
"orgId": "11111111-1111-4111-8111-111111111111",
"action": {
"type": "project-create",
"body": {
"name": "Counter",
"slug": "counter"
}
}
}Với organizations, hãy bỏ orgId và projectId. Với project-list và project-create, hãy thêm orgId. Với project-get, project-update, project-delete và mọi hành động thành viên, nguồn và không gian làm việc, hãy thêm cả orgId lẫn projectId. Dùng UUID chữ thường ở định dạng v1–5.
Với member-add, member-update và member-remove, hãy thêm userId của thành viên vào action. member-add và member-update cũng nhận role: owner, editor hoặc viewer. Với hành động không gian làm việc, hãy đặt thao tác không gian làm việc bên trong action.request.
Xác thực và kiểm tra bản xem trước
alti --json ide cloud contract --request request.jsonTrạng thái thoát 0 cho biết hợp đồng hợp lệ. Ví dụ tạo ra kết quả JSON sau:
{
"schema": "altifigence.dds.cloud-contract.v1",
"status": "contract-only",
"validated": true,
"executed": false,
"authorizationChecked": false,
"authorization": {
"kind": "native-cli-pkce",
"clientId": "altifigencecli",
"productId": "altifigence-cli",
"selectedOrganizationRequired": true,
"genericCloudTokenAccepted": false
},
"request": {
"method": "POST",
"path": "/v1/native/orgs/11111111-1111-4111-8111-111111111111/projects",
"headers": {
"Content-Type": "application/json"
},
"body": {
"name": "Counter",
"slug": "counter"
}
}
}Xem xét request.method, request.path và request.body. Biên nhận ghi lại việc xác thực cục bộ với status: "contract-only", executed: false và authorizationChecked: false.
Để đọc cùng tài liệu từ đầu vào chuẩn, hãy dùng:
alti --json ide cloud contract --request - < request.jsonSửa yêu cầu bị từ chối
Tên dự án rỗng tạo ra kết quả này với trạng thái thoát 2:
{
"schema": "altifigence.dds.cloud-receipt.v1",
"ok": false,
"executed": false,
"error": {
"code": "INVALID_PROJECT_BODY"
}
}Đổi tên thành giá trị không rỗng, chẳng hạn Counter, lưu tài liệu rồi chạy lại lệnh xác thực.
Nếu gặp CLOUD_IDENTITY_SCOPE_MISMATCH, hãy đặt orgId và projectId cho phù hợp với hành động. Ví dụ, xóa projectId khỏi yêu cầu project-create rồi xác thực lại. Nếu gặp INVALID_CLOUD_IDENTITY, hãy cung cấp UUID chữ thường ở định dạng v1–5.
Nếu gặp INVALID_CLOUD_CONTRACT, hãy kiểm tra cú pháp JSON và tên trường trong yêu cầu. Nếu gặp UNSUPPORTED_CLOUD_CONTRACT, hãy đặt schema thành altifigence.dds.cloud-request.v1. Giữ mỗi tài liệu trong giới hạn 1402200 byte.