Công cụ kiểm tra OpenAPI JSON

Dán nội dung tệp openapi.json hoặc swagger.json của bạn và nhận kết quả kiểm tra cấu trúc trong vài giây. Công cụ xác nhận JSON phân tích được, trường version có mặt, info có title và version, và paths tồn tại. Sau đó, nó cảnh báo về tên đường dẫn bất thường và các khóa thao tác không nhận diện được.

Cách kiểm tra tệp OpenAPI JSON

  1. 1

    Sao chép tệp

    Mở `openapi.json` và sao chép toàn bộ tài liệu, từ dấu ngoặc nhọn mở đến dấu đóng.

  2. 2

    Dán vào ô nhập

    Dán vào ô tài liệu OpenAPI / Swagger. Bạn không cần xóa khoảng trắng hay định dạng lại.

  3. 3

    Chạy kiểm tra

    Chuyển sang bước kết quả để chạy xác thực.

  4. 4

    Sửa và lặp lại

    Chỉnh sửa tệp theo từng lỗi, dán lại và chạy lại cho đến khi báo cáo không còn lỗi.

Các lỗi JSON thường gặp khiến kiểm tra thất bại

JSON nghiêm ngặt hơn YAML, nên hầu hết lỗi trong tệp chỉnh sửa tay đến từ cú pháp chứ không phải thiết kế API. Các nguyên nhân phổ biến là dấu phẩy sau thuộc tính cuối cùng, dấu nháy đơn thay vì nháy kép, chú thích (JSON không cho phép), hoặc thiếu dấu ngoặc nhọn đóng sau một đối tượng paths dài. Tệp bị hỏng thường kết thúc bằng thông báo “Could not parse as JSON or YAML”, hoặc lỗi thiếu trường vì không đọc được gì hữu ích.

Nếu bạn chỉ thấy lỗi phân tích cú pháp, hãy tìm lỗi cú pháp trước. Các kiểm tra cấu trúc chỉ chạy khi tài liệu được đọc như một đối tượng.

Ví dụ minh họa

Hãy lấy tài liệu nhỏ sau:

{
  "openapi": "3.0.3",
  "info": { "title": "Orders API" },
  "paths": {
    "orders": { "get": { "summary": "List orders" } }
  }
}

Tài liệu này phân tích được, và trường openapi cùng đối tượng paths đều có mặt. Báo cáo vẫn hiển thị:

Phát hiện Loại Lý do
info.version is required. Lỗi info có title nhưng không có version
Path ‘orders’ should start with ‘/’. Cảnh báo Khóa đường dẫn không bắt đầu bằng dấu gạch chéo

Vì có một lỗi, tài liệu không được báo là hợp lệ. Thêm "version": "1.0.0" vào info và đổi tên khóa thành /orders. Chạy lại sẽ xóa cả hai phát hiện.

Đạt nghĩa là gì và không nghĩa là gì

Báo cáo sạch chỉ có nghĩa là khung sườn đúng. Nó không đi theo liên kết $ref, không kiểm tra schema và không xác nhận mọi thao tác đều có phản hồi. Hãy xem đây là cổng kiểm tra nhanh trước khi bạn commit tệp, sau đó chạy linter đầy đủ để kiểm tra các quy tắc sâu hơn.

Quy trình thực tế cho đặc tả JSON

Lưu đặc tả trong hệ thống quản lý phiên bản và dán vào đây trước mỗi commit chạm vào paths. Vì kiểm tra nhanh, nó đóng vai trò như bước kiểm tra tỉnh táo sau khi gộp thay đổi của nhiều người, khi các khóa trùng lặp hoặc dấu ngoặc đặt sai dễ xảy ra nhất. Nếu JSON của bạn được sinh ra bởi một script build, hãy dán kết quả đã sinh ra thay vì mẫu, để kiểm tra đúng những gì người đọc sẽ nhận được. Khi báo cáo sạch, bạn có thể chia sẻ tệp hoặc đưa cho công cụ sinh tài liệu với sự tự tin hơn rằng cấu trúc cấp cao nhất ổn.

Câu hỏi thường gặp

Không. Khoảng trắng và thụt đầu dòng không ảnh hưởng gì. Cứ dán tệp như hiện có.

JSON chuẩn không cho phép dấu phẩy sau phần tử cuối cùng của một đối tượng hoặc mảng, nên tài liệu không thể đọc như JSON. Hãy xóa dấu phẩy và chạy kiểm tra lại.

Có. Kiểm tra phiên bản chấp nhận trường openapi hoặc trường swagger, nên cả tệp JSON Swagger 2.0 lẫn OpenAPI 3.x đều đi qua cùng một kiểm tra cấu trúc.

Không. Các phát hiện được liệt kê dưới dạng thông báo, chẳng hạn trường bị thiếu hoặc tên đường dẫn, không có số dòng. Hãy tìm khóa được nêu trong thông báo trong tệp của bạn.

Công cụ liên quan

Công cụ này có phiên bản bằng các ngôn ngữ khác

Hướng dẫn và trường hợp sử dụng