Cách gửi yêu cầu API trực tiếp đến bộ định tuyến hoặc bộ xử lý thông báo

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Giới thiệu

Khi khắc phục sự cố, bạn nên thực thi API trực tiếp trên các thành phần Apigee, chẳng hạn như bộ định tuyến hoặc trình xử lý tin nhắn. Ví dụ: bạn có thể muốn thực hiện việc này để:

  • Khắc phục các sự cố gây gián đoạn với một số yêu cầu API nhất định dẫn đến vấn đề với một thành phần Apigee cụ thể (bộ định tuyến/trình xử lý tin nhắn).
  • Thu thập thêm thông tin chẩn đoán bằng cách bật chế độ gỡ lỗi trên một phiên bản cụ thể của thành phần Apigee.
  • Hãy loại bỏ vấn đề là do một thành phần Apigee cụ thể gây ra.
  • Tìm hiểu xem các thao tác như tạo thực thể mới hoặc khởi động lại thực thể có tác động như mong muốn hay không.

Điều kiện tiên quyết

  • Quyền truy cập trực tiếp vào bộ định tuyến hoặc các thành phần của trình xử lý thư mà dựa vào đó để chạy yêu cầu API.
  • Bạn cần cài đặt công cụ cURL trên một phiên bản cụ thể của thành phần này.
  • Yêu cầu API bạn muốn kiểm thử ở định dạng cURL.

    Ví dụ: dưới đây là lệnh curl mà bạn có thể sử dụng để gửi yêu cầu tới một proxy API qua máy cục bộ:

    curl https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    
    curl https://myorg-test.mycompany.com/v1/customers
    

Cách chạy các yêu cầu API trực tiếp trên bộ định tuyến Apigee

Trường hợp 1: Yêu cầu API để lưu trữ bí danh máy chủ trỏ đến bộ định tuyến

Nếu mục nhập DNS của bí danh máy chủ được định cấu hình để trỏ đến bộ định tuyến Apigee Edge (nói cách khác là không có Trình cân bằng tải đàn hồi (ELB)), thì bạn có thể sử dụng các lệnh curl sau để gửi yêu cầu API trực tiếp đến bộ định tuyến:

  • Máy chủ ảo được định cấu hình để giao tiếp không an toàn qua cổng 80

    curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
    

    Ví dụ:

    curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    
  • Máy chủ ảo được định cấu hình để chấm dứt SSL trên cổng 443 trên bộ định tuyến

    curl -v --resolve HOST_ALIAS:443:127.0.0.1 https://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
    

    Ví dụ:

    curl -v --resolve myorg-test.mycompany.com:443:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    

Trường hợp 2: Yêu cầu API để lưu trữ bí danh máy chủ trỏ đến ELB

Nếu mục nhập DNS của bí danh máy chủ lưu trữ được định cấu hình để trỏ đến Trình cân bằng tải đàn hồi (ELB), thì bạn có thể sử dụng các lệnh curl sau để gửi yêu cầu API trực tiếp đến bộ định tuyến:

  • Máy chủ ảo được định cấu hình để giao tiếp không an toàn qua cổng 80

    curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
    

    Ví dụ:

    curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    
  • Máy chủ ảo được định cấu hình cho một cổng cao và SSL sẽ chấm dứt trên một trình cân bằng tải phía trước bộ định tuyến Apigee

    curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 http:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
    

    Ví dụ:

    curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    
  • Máy chủ ảo được định cấu hình cho một cổng cao và SSL sẽ chấm dứt trên bộ định tuyến Apigee

    Nói cách khác, trình cân bằng tải được định cấu hình để sử dụng tính năng truyền qua TCP đến bộ định tuyến Apigee.

    curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 https:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
    

    Ví dụ:

    curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
    

Cách chạy yêu cầu trực tiếp trên trình xử lý tin nhắn Apigee

Trường hợp 1: Yêu cầu API gửi đến trình xử lý thông báo qua cổng mặc định 8998

Cổng mặc định mà trình xử lý tin nhắn sử dụng để xử lý lưu lượng truy cập từ bộ định tuyến Apigee là 8998. Do đó, đối với mọi trường hợp cổng này không được thay đổi, lưu lượng truy cập cần được gửi trực tiếp đến cổng này trên một phiên bản trình xử lý thư cụ thể, như trong ví dụ sau. Yêu cầu curl phải được gửi đến URL http://INTERNAL_IP_OF_MP:8998 cùng với tiêu đề X-Apigee.Host có giá trị tên máy chủ, bao gồm cả cổng được sử dụng trong máy chủ ảo như được cho thấy trong ba ví dụ sau:

  • Máy chủ ảo được định cấu hình để chấm dứt SSL trên bộ định tuyến

    curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'
    

    Ví dụ:

    curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:443'
    
  • Máy chủ ảo được định cấu hình cho một "cổng cao cấp" và việc chấm dứt SSL xảy ra trên trình cân bằng tải HOẶC trên bộ định tuyến Apigee:

    curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'
    

    Ví dụ:

    curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'
    
  • Máy chủ ảo được định cấu hình theo cổng http 80 mặc định

    curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:80'
    

    Ví dụ:

    curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'
    

Trường hợp 2: Yêu cầu API gửi đến trình xử lý thông báo qua cổng SSL 8443

Có thể định cấu hình giao tiếp SSL giữa bộ định tuyến và trình xử lý thư. Các ví dụ sau đây sử dụng cổng 8443, là cổng mà tài liệu về Apigee đề xuất.

  • Máy chủ ảo được định cấu hình để chấm dứt SSL trên bộ định tuyến

    curl -v -k https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'
    

    Ví dụ:

    curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'
    
  • Máy chủ lưu trữ ảo được định cấu hình để chấm dứt SSL trên trình cân bằng tải và lưu lượng truy cập được chuyển tiếp trên một cổng cao đến bộ định tuyến

    curl -v https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'
    

    Ví dụ:

    curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'