Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Postman – Công cụ làm việc và kiểm thử API

    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:
    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.
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X