Các giao thức được hỗ trợ
Trong Restorm, một giao thức không phải là một phiên bản rút gọn của HTTP: mỗi giao thức có trình biên tập riêng, cơ chế thực thi riêng và cách hiển thị phản hồi riêng. Vì vậy cùng một dự án có thể chứa một lời gọi REST, một đăng ký MQTT và một consumer Kafka nằm cạnh nhau.
Mọi giao thức thực thi đều có trong bản Community, không giới hạn.
Yêu cầu / phản hồi
Section titled “Yêu cầu / phản hồi”| Giao thức | Dùng để làm gì | Chế độ máy chủ |
|---|---|---|
| HTTP | REST và mọi lời gọi HTTP | ✔ |
| GraphQL | Truy vấn, mutation, đăng ký | ✔ |
| gRPC | Lời gọi đơn và dạng luồng, gRPC-Web, Connect | ✔ |
| SOAP | Dịch vụ WSDL, phong bì XML | ✔ |
| OData | Tập thực thể, tùy chọn truy vấn, $batch | ✔ |
| JSON-RPC | JSON-RPC 2.0, đơn lẻ hoặc theo lô | — |
| tRPC | Thủ tục query và mutation | — |
Luồng và nhắn tin
Section titled “Luồng và nhắn tin”| Giao thức | Dùng để làm gì | Chế độ máy chủ |
|---|---|---|
| WebSocket | Kết nối hai chiều thô | ✔ |
| Socket.IO | Sự kiện có tên của Socket.IO | ✔ |
| MQTT | IoT — topic, QoS, lưu giữ, di chúc | ✔ |
| SSE | Server-Sent Events, ở phía nhận | — |
| STOMP | STOMP trên WebSocket | — |
| AMQP | RabbitMQ — phát, tiêu thụ, kiểm tra | — |
| Kafka | Sản xuất, tiêu thụ, kiểm tra một phân vùng | — |
| Redis | Pub/Sub và các lệnh | — |
Những gì chung cho tất cả
Section titled “Những gì chung cho tất cả”- Các
{{variables}}được giải quyết trong mọi trường, kể cả những trường riêng của giao thức. Xem Biến nội tuyến. - Lịch sử ghi lại mọi lần chạy, bất kể giao thức nào. Xem Lịch sử yêu cầu.
- Đoạn mã được sinh ra cho từng giao thức, trong những ngôn ngữ phù hợp. Xem Xuất mã.
- Kịch bản biết điều khiển từng giao thức, kể cả các kết nối dài hạn (kết nối / gửi / đóng). Xem Danh mục hành động.
- Tường lửa chặn mọi lời gọi đi ra, bất kể phương thức truyền tải nào. Xem Tường lửa.
Những gì không được hỗ trợ
Section titled “Những gì không được hỗ trợ”Để nói rõ về giới hạn: Restorm không thực thi Thrift (phần nhập của nó chỉ mang tính tư liệu), cũng không thực thi AMQP 1.0 (chỉ AMQP 0-9-1 / RabbitMQ được triển khai), và cũng không hỗ trợ NATS.