Công cụ kiểm tra Swagger 2.0
Dán định nghĩa Swagger 2.0, ở dạng JSON hoặc YAML, để kiểm tra có trường phiên bản swagger, đối tượng info có title và version, và đối tượng paths hay không. Các mục đường dẫn được quét để tìm dấu gạch chéo ở đầu và các khóa không phải thao tác chuẩn.
Cách kiểm tra tệp Swagger 2.0
-
1
Sao chép định nghĩa
Sao chép toàn bộ `swagger.json` hoặc `swagger.yaml`, bắt đầu từ dòng `swagger: "2.0"`.
-
2
Dán vào
Dán vào ô tài liệu OpenAPI / Swagger.
-
3
Chạy kiểm tra
Chuyển sang bước kết quả để xem các lỗi và cảnh báo.
-
4
Cập nhật và kiểm tra lại
Áp dụng các sửa lỗi trong tệp của bạn và dán phiên bản mới cho đến khi báo cáo sạch.
Điều gì được tính là đạt đối với Swagger 2.0
Với tệp 2.0, kiểm tra phiên bản được thỏa mãn bởi một khóa swagger ở cấp cao nhất. Công cụ không xác minh giá trị của nó có phải là "2.0" hay không, nên nó sẽ không bắt được một số sai. Ngoài phiên bản, cần có info.title, info.version và một đối tượng paths.
Các trường riêng của Swagger 2.0, như host, basePath, schemes, definitions và securityDefinitions, không được kiểm tra. Thiếu host hoặc khối definitions bị hỏng sẽ không được báo.
Ví dụ minh họa
{
"swagger": "2.0",
"info": { "title": "Shop API", "version": "1.0" },
"paths": {
"/products": {
"get": { "summary": "List products" },
"x-internal": true
}
}
}
Trường phiên bản, info và paths đều có mặt nên không có lỗi. Báo cáo hiển thị một cảnh báo:
| Phát hiện | Loại | Lý do |
|---|---|---|
| Unknown method ‘x-internal’ on /products. | Cảnh báo | Khóa không phải thao tác chuẩn hay trường mục đường dẫn |
Tài liệu vẫn được báo là hợp lệ vì cảnh báo không chặn tính hợp lệ. Các khóa mở rộng của nhà cung cấp như x-internal là hợp lệ trong Swagger 2.0, nên bạn có thể giữ nguyên.
Di chuyển từ 2.0
Nếu bạn định chuyển sang OpenAPI 3.x, bạn có thể dán tệp đã chuyển đổi vào cùng ô nhập và so sánh kết quả. Kiểm tra giống nhau, chỉ khác là trường openapi thay thế swagger. Với công việc di chuyển thực sự, hãy dùng bộ chuyển đổi và linter đầy đủ, vì công cụ này không dịch các thiết lập definitions hoặc host.
Khi kiểm tra nhanh là đủ
Các định nghĩa Swagger 2.0 thường tồn tại nhiều năm trong kho mã và được sửa tay. Kiểm tra cấu trúc nhanh hữu ích khi bạn tiếp nhận một định nghĩa như vậy, khi một công cụ từ chối tải nó và bạn nghi có trường bị thiếu, hoặc khi bạn gộp hai tệp và muốn chắc kết quả vẫn có các phần info và paths. Để biết đầy đủ quy tắc 2.0, bao gồm definitions và thiết lập bảo mật, hãy dùng một linter chuyên dụng.
Hãy nhớ rằng báo cáo sạch chỉ là một khẳng định về cấu trúc. Thao tác không có phản hồi, sai kiểu tham số và tham chiếu chưa được phân giải nằm ngoài kiểm tra này, nên hãy thử tệp trong công cụ tài liệu hoặc sinh mã của bạn.
Câu hỏi thường gặp
Không. Nó kiểm tra sự có mặt của trường swagger hoặc openapi, không kiểm tra nội dung của nó.
Không. Chỉ trường phiên bản, đối tượng info, đối tượng paths và các mục dưới mỗi đường dẫn được kiểm tra.
Có. Văn bản được đọc như JSON trước và như YAML nếu thất bại. Khi dán, hãy giữ nguyên thụt đầu dòng.
Các trường parameters, summary, description và servers ở cấp đường dẫn nằm trong danh sách khóa được chấp nhận, nên chúng không kích hoạt cảnh báo phương thức không xác định.
Công cụ liên quan
Bảng tham chiếu ASCII
Bảng ASCII đầy đủ từ 0 đến 127 với giá trị thập phân, thập lục phân, bát phân, nhị phân và ký hiệu tham chiếu ký tự số HTML, gồm NUL, LF và DEL.
Chuyển đổi từ RGB sang CMYK
Chuyển màu RGB thành phần trăm mực CMYK bằng công thức tiêu chuẩn. Xem trước tức thì và các giá trị C/M/Y/K. Đây là phép xấp xỉ toán học, không phải chuyển đổi có quản lý màu.
Công cụ tìm tên màu
Tìm màu CSS có tên tiêu chuẩn gần nhất với giá trị HEX, RGB hoặc HSL bằng độ chênh CIEDE2000.
Chuyển đổi HTML sang BBCode
Chuyển đổi các đoạn mã HTML thành BBCode dành cho phpBB, vBulletin và các phần mềm diễn đàn khác không hỗ trợ định dạng HTML thô.
Bộ chuyển đổi ASCII sang nhị phân
Chuyển bất kỳ chuỗi ASCII nào sang biểu diễn nhị phân. Mỗi ký tự thành tám bit, phân tách bằng khoảng trắng, sẵn để dán vào trace giao thức hoặc bài tập.
Trình giải mã mã JavaScript (JavaScript Deobfuscator)
Giải mã mã JavaScript đã được rút gọn hoặc nén bằng cách đổi tên biến, giải mã chuỗi và mảng, đảo ngược cấu trúc dòng điều khiển và làm đẹp mã.
Công cụ này có phiên bản bằng các ngôn ngữ khác
- مدقق Swagger 2.0 [AR]
- Swagger 2.0 バリデーター [JA]
- Swagger 2.0 Validator [DE]
- Swagger 2.0-validerare [SV]
- Validador Swagger 2.0 [PT]
- Swagger 2.0 검증기 [KO]
- Validateur Swagger 2.0 [FR]
- Swagger 2.0 Validator [NL]
- ตัวตรวจสอบ Swagger 2.0 [TH]
- Validador de Swagger 2.0 [ES]
- Walidator Swagger 2.0 [PL]
- Validator Swagger 2.0 [ID]
- Валидатор Swagger 2.0 [RU]
- Swagger 2.0 Doğrulayıcı [TR]
- Swagger 2.0 验证器 [ZH]
- Swagger 2.0 Validator [EN]
- Validatore Swagger 2.0 [IT]