Memvalidasi permintaan Cloud bertipe
Periksa permintaan proyek, anggota, sumber, atau ruang kerja secara lokal dan tinjau pratinjau permintaan bertipe dengan Altifigence CLI.
Gunakan Altifigence CLI 0.1.9 di Linux untuk memvalidasi dokumen permintaan bertipe dan meninjau metode, jalur, header, serta isinya.
Menyiapkan permintaan
Simpan contoh ini sebagai request.json:
{
"schema": "altifigence.dds.cloud-request.v1",
"orgId": "11111111-1111-4111-8111-111111111111",
"action": {
"type": "project-create",
"body": {
"name": "Counter",
"slug": "counter"
}
}
}Untuk organizations, hilangkan orgId dan projectId. Untuk project-list dan project-create, sertakan orgId. Untuk project-get, project-update, project-delete dan setiap tindakan anggota, sumber, dan ruang kerja, sertakan orgId dan projectId. Gunakan UUID huruf kecil dalam format v1–5.
Untuk member-add, member-update dan member-remove, tambahkan userId anggota ke action. member-add dan member-update juga menerima role: owner, editor atau viewer. Untuk tindakan ruang kerja, masukkan operasi ruang kerja di dalam action.request.
Memvalidasi dan meninjau pratinjau
alti --json ide cloud contract --request request.jsonStatus keluar 0 melaporkan kontrak yang valid. Contoh ini menghasilkan JSON berikut:
{
"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"
}
}
}Tinjau request.method, request.path, dan request.body. Tanda terima mencatat validasi lokal dengan status: "contract-only", executed: false, dan authorizationChecked: false.
Untuk membaca dokumen yang sama dari input standar, gunakan:
alti --json ide cloud contract --request - < request.jsonMemperbaiki permintaan yang ditolak
Nama proyek yang kosong menghasilkan hasil berikut dengan status keluar 2:
{
"schema": "altifigence.dds.cloud-receipt.v1",
"ok": false,
"executed": false,
"error": {
"code": "INVALID_PROJECT_BODY"
}
}Ubah nama menjadi nilai yang tidak kosong seperti Counter, simpan dokumen, dan jalankan kembali perintah validasi.
Untuk CLOUD_IDENTITY_SCOPE_MISMATCH, sesuaikan orgId dan projectId dengan tindakan. Misalnya, hapus projectId dari permintaan project-create dan validasi kembali. Untuk INVALID_CLOUD_IDENTITY, berikan UUID huruf kecil dalam format v1–5.
Untuk INVALID_CLOUD_CONTRACT, periksa sintaks JSON dan nama kolom permintaan. Untuk UNSUPPORTED_CLOUD_CONTRACT, atur schema ke altifigence.dds.cloud-request.v1. Batasi setiap dokumen hingga 1402200 byte.