Trong Apidog, sau khi gửi một yêu cầu trong một endpoint, Apidog tự động xác thực liệu phản hồi có tuân thủ schema dựa trên đặc tả của endpoint hay không.Quy tắc xác thực#
Phạm vi xác thực#
Mã trạng thái HTTP: Do API trả về.
Định dạng dữ liệu: Của nội dung được trả về (JSON, XML, HTML, Raw, Binary, No-Content, MsgPack, Event-Stream).
Schemas: Chỉ JSON và XML có thể cấu hình schemas. Để biết giải thích chi tiết về cấu trúc dữ liệu, vui lòng tham khảo Schemas. | Hạng mục xác thực | Loại thuộc tính | Ví dụ lời nhắc xác thực |
|---|
| Sự tồn tại của khóa bắt buộc | Tất cả | $ should have required property "code" |
| Kiểu giá trị khớp với đặc tả | Tất cả | $.data.id should be integer |
| Khóa không null không được có giá trị null | Tất cả | $.data.id should be integer |
| Giá trị liệt kê nằm trong phạm vi | String, Integer, Number | $.data.status should be equal to one of predefined values |
| Giá trị số nằm trong phạm vi | Integer, Number | $.data.id should be >= 0 |
| Giá trị số tuân theo yêu cầu bội số | Integer, Number | $.data.quantity should be a multiple of 10 |
| Độ dài chuỗi nằm trong phạm vi | String | $.data.name should not be shorter than 3 characters |
| Chuỗi khớp với mẫu | String | $.data.name should match pattern "^[A-Za-z]" |
| Số lượng phần tử mảng nằm trong phạm vi | Array | $.data.tags should not have more than 2 items |
Cần làm gì tiếp theo#
Nếu các điểm trên nhất quán, hệ thống sẽ hiển thị "Response Data Structure validated!". Điều này có nghĩa là các giá trị trả về thực tế của API nhất quán với đặc tả tài liệu API, loại bỏ nhu cầu xác minh thủ công và nâng cao hiệu quả.Khi gặp các lời nhắc tương ứng ở bên phải, bạn có thể làm theo lời nhắc để giải quyết vấn đề.Nhìn chung có hai loại vấn đề: thứ nhất là khi phản hồi của máy chủ không chính xác, trong trường hợp đó backend cần được sửa đổi để phù hợp với đặc tả; thứ hai là khi đặc tả API không chính xác, yêu cầu sửa đổi đặc tả endpoint.Bằng cách sử dụng tính năng xác thực tự động, bạn có thể loại bỏ nhu cầu viết script thủ công đ ể xác thực phản hồi. Hơn nữa, khi có thay đổi đối với đặc tả API, quá trình xác thực cũng sẽ tự động điều chỉnh tương ứng.Xác thực các phản hồi khác#
Theo mặc định, Apidog xác thực phản hồi đầu tiên trong endpoint, thường là phản hồi 200. Tuy nhiên, một endpoint có thể trả về nhiều phản hồi khác nhau với các schema khác nhau. Trong những trường hợp như vậy, bạn có thể chọn phản hồi cần xác thực ở góc trên bên phải của khu vực xác thực.Bạn cũng có tùy chọn tắt tính năng "validate" bằng cách nhấp vào công tắc phía trước phản hồi. Thay đổi này chỉ áp dụng cho endpoint hiện tại.Xác thực thuộc tính bổ sung#
Khi nghiệp vụ thực tế được nâng cấp, các thuộc tính bổ sung có thể được thêm vào phản hồi. Trong những trường hợp như vậy, Apidog cho phép người dùng xác định có cho phép các trường bổ sung hay không.Ví dụ, có một API để truy vấn thông tin người dùng, và các trường trả về trước đây là name và phone. Do đó, cấu trúc dữ liệu được chỉ định như sau:Khi nghiệp vụ được nâng cấp, một trường city mới đã được thêm vào API này, nhưng đặc tả API chưa được cập nhật. Theo cơ chế xác thực mặc định, sẽ không có lỗi nào được báo cáo, nghĩa là việc thêm các trường bổ sung được cho phép theo mặc định.Tuy nhiên, đối với các kịch bản phát triển nghiêm ngặt hơn, nếu giá trị trả về chứa các trường bổ sung không khớp với định nghĩa, quá trình xác thực phản hồi cũng nên báo lỗi. Trong trường hợp này, bạn có thể đạt được hành vi mong muốn bằng cách làm theo các bước sau:1.
Sửa đổi phản hồi trong đặc tả API. Trong cài đặt nâng cao của object, cấu hình "additionalProperties" thành "Deny", cài đặt này sẽ chỉ có hiệu lực đối với API hiện tại.
2.
Nếu bạn muốn không cho phép các trường bổ sung đối với tất cả API trong dự án, bạn có thể vào Settings → Response Validate Settings và tắt Allow Objects to Have additionalProperties.
3.
Sau khi hoàn tất cấu hình, khi gửi lại yêu cầu, cơ chế xác thực phản hồi sẽ báo lỗi, cho biết rằng additionalProperties không được phép.
Cài đặt xác thực#
Công tắc "Validate Response" được bật theo mặc định, và bạn có thể điều chỉnh trong "Verification Response Settings" tại giao diện cài đặt dự án. Cài đặt này chỉ có hiệu lực đối với tất cả API trong dự án hiện tại và không ảnh hưởng đến các Endpoint Cases đã lưu.Nếu bạn chỉ cần các khẳng định thủ công hoặc post-scripts và không cần Apidog xác thực tính nhất quán của phản hồi với đặc tả API, bạn có thể tắt chức năng xác thực cho các module cụ thể.Xác thực nội dung phản hồi#
Nội dung xác thực phản hồi bao gồm "HTTP Status", "Header", "Body"; bạn có thể điều chỉnh trong "Validate Response Content" tại cài đặt dự án. Cài đặt này chỉ có hiệu lực đối với tất cả API trong dự án hiện tại và không ảnh hưởng đến các Endpoint Cases đã lưu. Modified at 2026-06-11 10:23:06