Postman – Công cụ làm việc và kiểm thử API
Postman là một công cụ phổ biến giúp Developer, DevOps và Network Engineer gửi API request, xem response và kiểm thử API mà chưa cần viết chương trình Python.
Có thể hiểu đơn giản:
Trong Network Automation, Postman rất hữu ích khi làm việc với REST API của Controller, Cloud Platform, Firewall hoặc các hệ thống quản trị mạng.
1. Method – Phương thức HTTP
Method cho biết chúng ta muốn API thực hiện hành động gì.
Các method thường gặp:
Trong hình đang sử dụng:
GET
Có nghĩa là Postman đang yêu cầu server trả về thông tin, không phải tạo hay xóa dữ liệu.
2. URL – Địa chỉ API
URL xác định API endpoint mà request sẽ được gửi đến.
Ví dụ:
https://{{hostName}}/api/node/class/fvCEp.json
Trong đó {{hostName}} là một variable. Giá trị thật của nó có thể được lưu trong Environment.
Nhờ vậy, không cần sửa URL mỗi khi chuyển giữa các hệ thống:
LAB → TEST → PRODUCTION
3. Environment
Environment là nơi lưu các biến dùng cho từng môi trường.
Ví dụ:
hostName = 10.10.10.20
username = admin
Khi chuyển Environment, cùng một Collection có thể được sử dụng để kiểm thử nhiều hệ thống khác nhau mà không phải sửa từng request.
Đây là một khái niệm rất quan trọng trong Automation và DevOps.
4. Saved Requests và Collections
Bên trái hình là các API request đã được lưu.
Ví dụ:
Nhiều request có thể được nhóm thành một Collection.
Network Engineer có thể tạo một Collection gồm:
Login → Device Inventory → Interface → BGP → Health → Events
Sau đó sử dụng lại khi troubleshooting hoặc kiểm thử hệ thống.
5. Request Body
Request Body chứa dữ liệu gửi từ client tới server.
Ví dụ khi tạo một resource bằng POST:
{
"hostname": "R1",
"location": "HCM"
}
Không phải request nào cũng cần body. GET thường không sử dụng request body, trong khi POST/PUT/PATCH thường có.
Ngoài Body, request còn có các thành phần quan trọng như Headers, Authorization, Parameters và Cookies. 6. Response Body
Sau khi API Server xử lý request, nó gửi response về Postman.
Trong hình, dữ liệu trả về ở dạng JSON.
Ngoài dữ liệu, chúng ta còn thấy:
Status: 200 OK
Điều này cho biết request đã được xử lý thành công.
Một số HTTP status code Network Engineer nên nhớ:
200 OK → Thành công
201 Created → Tạo resource thành công
400 Bad Request → Request không hợp lệ
401 Unauthorized → Chưa xác thực hoặc thông tin xác thực không hợp lệ
403 Forbidden → Đã nhận diện nhưng không có quyền
404 Not Found → Không tìm thấy resource
500 Internal Server Error → Lỗi phía server
7. Generate Code
Một tính năng rất hữu ích của Postman là Generate Code.
Sau khi API request chạy thành công, Postman có thể giúp chuyển request đó sang ví dụ code cho nhiều ngôn ngữ/công cụ.
Workflow rất phù hợp cho người mới học Network Automation:
Test API bằng Postman → Request chạy thành công → Generate Code → đưa logic vào Python/Automation
Ví dụ, thay vì ngay lập tức viết Python và phải đồng thời debug URL, authentication, headers và JSON, chúng ta có thể kiểm chứng API trước bằng Postman. Ví dụ cho Network Engineer
Giả sử cần lấy danh sách interface từ Network Controller:
Postman → GET → API Endpoint → Authorization → Send
Server trả về:
{
"interface": "GigabitEthernet1",
"status": "up",
"ip": "10.1.1.1"
}
Sau khi xác nhận API hoạt động đúng, kỹ sư có thể chuyển quy trình này thành Python để tự động thu thập dữ liệu từ hàng trăm thiết bị.
Postman là nơi rất thuận tiện để “nói chuyện” với API trước khi chúng ta tự động hóa cuộc hội thoại đó bằng Python, Ansible hoặc các công cụ Automation khác.
Một workflow học rất thực tế là:
Postman → REST API → JSON → Python → Network Automation.
Postman là một công cụ phổ biến giúp Developer, DevOps và Network Engineer gửi API request, xem response và kiểm thử API mà chưa cần viết chương trình Python.
Có thể hiểu đơn giản:
Postman giống như một “API Client”: chúng ta tạo request → gửi đến API Server → nhận và phân tích response.
Trong Network Automation, Postman rất hữu ích khi làm việc với REST API của Controller, Cloud Platform, Firewall hoặc các hệ thống quản trị mạng.
1. Method – Phương thức HTTP
Method cho biết chúng ta muốn API thực hiện hành động gì.
Các method thường gặp:
- GET – đọc/lấy dữ liệu.
- POST – tạo mới hoặc gửi dữ liệu để xử lý.
- PUT – cập nhật/thay thế resource.
- PATCH – cập nhật một phần.
- DELETE – xóa resource.
Trong hình đang sử dụng:
GET
Có nghĩa là Postman đang yêu cầu server trả về thông tin, không phải tạo hay xóa dữ liệu.
2. URL – Địa chỉ API
URL xác định API endpoint mà request sẽ được gửi đến.
Ví dụ:
https://{{hostName}}/api/node/class/fvCEp.json
Trong đó {{hostName}} là một variable. Giá trị thật của nó có thể được lưu trong Environment.
Nhờ vậy, không cần sửa URL mỗi khi chuyển giữa các hệ thống:
LAB → TEST → PRODUCTION
3. Environment
Environment là nơi lưu các biến dùng cho từng môi trường.
Ví dụ:
hostName = 10.10.10.20
username = admin
Khi chuyển Environment, cùng một Collection có thể được sử dụng để kiểm thử nhiều hệ thống khác nhau mà không phải sửa từng request.
Đây là một khái niệm rất quan trọng trong Automation và DevOps.
4. Saved Requests và Collections
Bên trái hình là các API request đã được lưu.
Ví dụ:
- Login
- Query Object
- Fabric Health
- LLDP Neighbors
- MAC Address
- Tenant List
Nhiều request có thể được nhóm thành một Collection.
Network Engineer có thể tạo một Collection gồm:
Login → Device Inventory → Interface → BGP → Health → Events
Sau đó sử dụng lại khi troubleshooting hoặc kiểm thử hệ thống.
5. Request Body
Request Body chứa dữ liệu gửi từ client tới server.
Ví dụ khi tạo một resource bằng POST:
{
"hostname": "R1",
"location": "HCM"
}
Không phải request nào cũng cần body. GET thường không sử dụng request body, trong khi POST/PUT/PATCH thường có.
Ngoài Body, request còn có các thành phần quan trọng như Headers, Authorization, Parameters và Cookies. 6. Response Body
Sau khi API Server xử lý request, nó gửi response về Postman.
Trong hình, dữ liệu trả về ở dạng JSON.
Ngoài dữ liệu, chúng ta còn thấy:
Status: 200 OK
Điều này cho biết request đã được xử lý thành công.
Một số HTTP status code Network Engineer nên nhớ:
200 OK → Thành công
201 Created → Tạo resource thành công
400 Bad Request → Request không hợp lệ
401 Unauthorized → Chưa xác thực hoặc thông tin xác thực không hợp lệ
403 Forbidden → Đã nhận diện nhưng không có quyền
404 Not Found → Không tìm thấy resource
500 Internal Server Error → Lỗi phía server
7. Generate Code
Một tính năng rất hữu ích của Postman là Generate Code.
Sau khi API request chạy thành công, Postman có thể giúp chuyển request đó sang ví dụ code cho nhiều ngôn ngữ/công cụ.
Workflow rất phù hợp cho người mới học Network Automation:
Test API bằng Postman → Request chạy thành công → Generate Code → đưa logic vào Python/Automation
Ví dụ, thay vì ngay lập tức viết Python và phải đồng thời debug URL, authentication, headers và JSON, chúng ta có thể kiểm chứng API trước bằng Postman. Ví dụ cho Network Engineer
Giả sử cần lấy danh sách interface từ Network Controller:
Postman → GET → API Endpoint → Authorization → Send
Server trả về:
{
"interface": "GigabitEthernet1",
"status": "up",
"ip": "10.1.1.1"
}
Sau khi xác nhận API hoạt động đúng, kỹ sư có thể chuyển quy trình này thành Python để tự động thu thập dữ liệu từ hàng trăm thiết bị.
Postman là nơi rất thuận tiện để “nói chuyện” với API trước khi chúng ta tự động hóa cuộc hội thoại đó bằng Python, Ansible hoặc các công cụ Automation khác.
Một workflow học rất thực tế là:
Postman → REST API → JSON → Python → Network Automation.