Tạo proxy API từ Đặc tả OpenAPI

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

Kiến thức bạn sẽ học được

Trong hướng dẫn này, bạn sẽ tìm hiểu cách:

  • Tạo proxy API Edge từ một Thông số kỹ thuật OpenAPI.
  • Gọi proxy API bằng cURL.
  • Thêm chính sách vào luồng có điều kiện.
  • Kiểm thử lệnh gọi chính sách bằng cURL.

Trong hướng dẫn này, bạn sẽ tìm hiểu cách tạo proxy API Edge từ OpenAPI Thông số kỹ thuật sử dụng giao diện quản lý Apigee Edge. Khi bạn gọi proxy API bằng Máy khách HTTP, chẳng hạn như cURL, proxy API sẽ gửi yêu cầu đến mục tiêu mô phỏng Apigee .

Giới thiệu về Open API Initiative

Mở Sáng kiến API
"Sáng kiến API mở (OAI) tập trung vào tạo, phát triển và quảng bá Định dạng mô tả API trung lập cho nhà cung cấp dựa trên Swagger Specification". Để biết thêm thông tin về Sáng kiến API mở, hãy truy cập vào https://openapis.org.

Thông số kỹ thuật OpenAPI sử dụng một định dạng chuẩn để mô tả API RESTful. Được viết ở định dạng JSON hoặc YAML, Thông số kỹ thuật OpenAPI có thể đọc được bằng máy nhưng con người cũng có thể dễ dàng đọc và hiểu. Bản đặc tả mô tả các thành phần như vậy của API làm đường dẫn cơ sở, đường dẫn và động từ, tiêu đề, tham số truy vấn, toán tử, loại nội dung, nội dung mô tả về câu trả lời và nhiều nội dung khác. Ngoài ra, Đặc tả OpenAPI thường được dùng để tạo tài liệu API.

Giới thiệu về dịch vụ mục tiêu mô phỏng Apigee

Dịch vụ mục tiêu mô phỏng Apigee dùng trong hướng dẫn này được lưu trữ tại Apigee và trả về dữ liệu đơn giản. Không cần khoá API hoặc mã truy cập. Trên thực tế, bạn có thể truy cập vào công cụ này trên web trình duyệt. Hãy thử bằng cách nhấp vào nút sau:

http://mocktarget.apigee.net

Dịch vụ đích sẽ trả về lời chào Hello, guest!

Để biết thông tin về tập hợp đầy đủ các API mà dịch vụ mục tiêu mô phỏng hỗ trợ, hãy nhấp vào sau:

http://mocktarget.apigee.net/help

Bạn cần có

  • Một tài khoản Apigee Edge. Nếu chưa có tài khoản, bạn có thể đăng ký bằng cách làm theo hướng dẫn về cách Tạo ứng dụng Apigee Edge tài khoản.
  • Thông số kỹ thuật OpenAPI. Trong hướng dẫn này, bạn sẽ sử dụng mocktarget.yaml Thông số kỹ thuật OpenAPI mô tả mục tiêu mô phỏng của Apigee dịch vụ của http://mocktarget.apigee.net. Để biết thêm thông tin, hãy xem https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi.
  • cURL đã được cài đặt trên máy của bạn để thực hiện lệnh gọi API từ dòng lệnh; hoặc trình duyệt web.

Tạo proxy API

Edge

Cách tạo proxy API từ Thông số kỹ thuật OpenAPI bằng giao diện người dùng Edge:

  1. Đăng nhập vào https://apigee.com/edge.
  2. Nhấp vào Proxy API trong cửa sổ chính.

    Hoặc, bạn có thể chọn Phát triển > Proxy API trong thanh điều hướng bên trái.

    Nhấp vào Proxy API trên trang đích

  3. Nhấp vào + Proxy.
    Thêm proxy API
  4. Trong trình hướng dẫn Tạo proxy, hãy nhấp vào Sử dụng thông số kỹ thuật OpenAPI cho mẫu Đảo ngược proxy (phổ biến nhất).
    Tạo một loại proxy
  5. Nhấp vào Nhập từ URL rồi nhập các thông tin sau:
    • URL thông số kỹ thuật OpenAPI: Đường dẫn đến nội dung thô trên GitHub cho Thông số kỹ thuật OpenAPI trong trường URL:
      https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget3.0.yaml
    • Tên quy cách: Tên của quy cách OpenAPI, chẳng hạn như Mock Target (Mục tiêu mô phỏng).

      Tên này được dùng để lưu trữ Thông số kỹ thuật OpenAPI trong kho thông số kỹ thuật. Xem Quản lý thông số kỹ thuật của bạn.

  6. Nhấp vào Nhập.

    Trang Chi tiết trong trình hướng dẫn Tạo proxy sẽ hiển thị. Các trường được điền sẵn sử dụng các giá trị được xác định trong Thông số kỹ thuật OpenAPI, như được thể hiện trong

    Bảng sau đây mô tả các giá trị mặc định được điền sẵn bằng cách sử dụng trong Thông số kỹ thuật OpenAPI. Phần trích dẫn trong Thông số kỹ thuật OpenAPI minh hoạ các thuộc tính được sử dụng được hiển thị sau bảng.

    Trường Mô tả Mặc định
    Tên Tên của proxy API. Ví dụ: Mock-Target-API. Thuộc tính title trong Thông số kỹ thuật OpenAPI có dấu cách được thay thế theo dấu gạch ngang
    Đường dẫn cơ sở Thành phần đường dẫn xác định riêng proxy API này trong tổ chức. URL công khai của proxy API này bao gồm tên tổ chức của bạn, môi trường nơi triển khai proxy API này và đường dẫn cơ sở này. Cho ví dụ: http://myorg-test.apigee.net/mock-target-api Đã chuyển đổi nội dung của trường Tên thành toàn bộ chữ thường
    Nội dung mô tả Nội dung mô tả về proxy API. Thuộc tính description trong Thông số kỹ thuật OpenAPI
    Target (API hiện có) URL mục tiêu được gọi thay mặt cho proxy API này. Bất kỳ URL nào có thể truy cập qua có thể sử dụng Internet cởi mở. Ví dụ: http://mocktarget.apigee.net Thuộc tính servers trong Thông số kỹ thuật OpenAPI

    Phần sau đây cung cấp một phần trích dẫn từ Đặc tả OpenAPI hiển thị các thuộc tính dùng để điền sẵn các trường.

    openapi: 3.0.0
    info:
      description: OpenAPI Specification for the Apigee mock target service endpoint.
      version: 1.0.0
      title: Mock Target API
    paths:
      /:
        get:
          summary: View personalized greeting
          operationId: View a personalized greeting
          description: View a personalized greeting for the specified or guest user.
          parameters:
            - name: user
              in: query
              description: Your user name.
              required: false
              schema:
                type: string
          responses:
            "200":
              description: Success
    ...
    servers:
      - url: http://mocktarget.apigee.net
      - url: https://mocktarget.apigee.net
    ...
    
  7. Chỉnh sửa trường Mô tả như sau: API proxy for the Apigee mock target service endpoint.
  8. Nhấp vào Tiếp theo.
  9. Trên trang Common policies (Chính sách chung), trong phần Bảo mật: Uỷ quyền, hãy đảm bảo rằng bạn chọn Pass through (không uỷ quyền) rồi nhấp vào Next (Tiếp theo):

    Chuyển qua (không được uỷ quyền) được chọn trên trang Chính sách chung

  10. Trên trang Quy trình, hãy đảm bảo tất cả các thao tác đều được chọn. Xây dựng luồng proxy
  11. Nhấp vào Tiếp theo.
  12. Trên trang Máy chủ ảo, hãy chọn default (mặc định) và secure (bảo mật) rồi nhấp vào Tiếp theo.
    mặc định và bảo mật đã chọn trên trang Máy chủ ảo
  13. Trên trang Tóm tắt, hãy đảm bảo môi trường Kiểm thử được được chọn trong phần Triển khai không bắt buộc rồi nhấp vào Tạo và deploy:

    Apigee tạo proxy API mới và triển khai proxy đó trong môi trường thử nghiệm của bạn:

  14. Nhấp vào Chỉnh sửa proxy để hiển thị trang Tổng quan cho API proxy.
    Tóm tắt về proxy API mục tiêu mô phỏng

Classic Edge (Đám mây riêng tư)

Cách tạo proxy API từ Thông số kỹ thuật OpenAPI bằng giao diện người dùng Classic Edge:

  1. Đăng nhập vào https://apigee.com/edge.
  2. Nhấp vào Proxy API trong cửa sổ chính.

    Hoặc, bạn có thể chọn Phát triển > Proxy API trong thanh điều hướng bên trái.

  3. Nhấp vào + Proxy.
    Thêm proxy API
  4. Trong trình hướng dẫn Tạo proxy, hãy chọn Đảo ngược proxy (phổ biến nhất) và nhấp vào Use OpenAPI.
    Tạo một loại proxy
  5. Nhấp vào Import from a URL (Nhập từ URL), nhập tên cho OpenAPI Specification và nhập đường dẫn đến nội dung thô trên GitHub cho OpenAPI Thông số kỹ thuật trong trường URL:


    https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget.yaml
  6. Nhấp vào Chọn.
  7. Nhấp vào Tiếp theo.

    Trang Chi tiết trong trình hướng dẫn Tạo proxy sẽ hiển thị. Các trường được điền sẵn sử dụng các giá trị được xác định trong Thông số kỹ thuật OpenAPI, như được thể hiện trong hình.

    Xây dựng chi tiết proxy

    Bảng sau đây mô tả các giá trị mặc định được điền sẵn bằng cách sử dụng trong Thông số kỹ thuật OpenAPI. Phần trích dẫn trong Thông số kỹ thuật OpenAPI minh hoạ các thuộc tính được sử dụng được hiển thị sau bảng.

    Trường Mô tả Mặc định
    Tên proxy Tên của proxy API. Ví dụ: Mock-Target-API. Thuộc tính title trong Thông số kỹ thuật OpenAPI có dấu cách được thay thế theo dấu gạch ngang
    Đường dẫn cơ sở proxy Thành phần đường dẫn xác định riêng proxy API này trong tổ chức. URL công khai của proxy API này bao gồm tên tổ chức của bạn, môi trường nơi triển khai proxy API này và đường dẫn cơ sở này. Cho ví dụ: http://myorg-test.apigee.net/mock-target-api Đã chuyển đổi nội dung của trường Tên thành toàn bộ chữ thường
    API hiện có URL mục tiêu được gọi thay mặt cho proxy API này. Bất kỳ URL nào có thể truy cập qua có thể sử dụng Internet cởi mở. Ví dụ: http://mocktarget.apigee.net Thuộc tính servers trong Thông số kỹ thuật OpenAPI
    Nội dung mô tả Nội dung mô tả về proxy API. Thuộc tính description trong Thông số kỹ thuật OpenAPI

    Phần sau đây cung cấp một phần trích dẫn từ Đặc tả OpenAPI hiển thị các thuộc tính dùng để điền sẵn các trường.

    openapi: 3.0.0
    info:
      description: OpenAPI Specification for the Apigee mock target service endpoint.
      version: 1.0.0
      title: Mock Target API
    paths:
      /:
        get:
          summary: View personalized greeting
          operationId: View a personalized greeting
          description: View a personalized greeting for the specified or guest user.
          parameters:
            - name: user
              in: query
              description: Your user name.
              required: false
              schema:
                type: string
          responses:
            "200":
              description: Success
    ...
    servers:
      - url: http://mocktarget.apigee.net
      - url: https://mocktarget.apigee.net
    ...
    
  8. Chỉnh sửa trường Mô tả như sau: API proxy for the Apigee mock target service endpoint.
  9. Nhấp vào Tiếp theo.
  10. Trên trang Quy trình, hãy đảm bảo tất cả các thao tác đều được chọn. Xây dựng luồng proxy
  11. Nhấp vào Tiếp theo.
  12. Trên trang Bảo mật, hãy chọn Pass through (không có) làm bảo mật rồi nhấp vào Tiếp theo.
  13. Trên trang Virtual Hosts (Máy chủ lưu trữ ảo), hãy đảm bảo tất cả máy chủ ảo được chọn và nhấp vào Tiếp theo.
  14. Trên trang Xây dựng, hãy đảm bảo chọn môi trường kiểm thử và nhấp vào Build and Deploy (Tạo và triển khai).
  15. Trên trang Tóm tắt, bạn thấy thông báo xác nhận rằng proxy API mới của bạn đã được tạo thành công và được triển khai vào môi trường thử nghiệm của bạn.
    Xây dựng bản tóm tắt proxy
  16. Nhấp vào Mock-Target-API (API mục tiêu mô phỏng) để hiển thị trang Tổng quan cho API proxy.
    Tóm tắt về proxy API mục tiêu mô phỏng

Xin chúc mừng! Bạn đã tạo một proxy API qua một Thông số kỹ thuật OpenAPI. Tiếp theo, bạn sẽ hãy thử nghiệm để biết cách thức hoạt động.

Kiểm tra proxy API

Bạn có thể kiểm thử API Mock-Target-API bằng cURL hoặc trình duyệt web.

Trong cửa sổ dòng lệnh, hãy chạy lệnh cURL sau. Thay thế tên tổ chức của bạn bằng URL.

curl http://<org_name>-test.apigee.net/mock-target-api

Đáp

Bạn sẽ thấy phản hồi sau:

Hello, Guest!        

Bạn làm tốt lắm! Bạn đã tạo một proxy API đơn giản từ một Thông số kỹ thuật OpenAPI và kiểm thử nó.

Thêm tệp XML vào chính sách JSON

Tiếp theo, bạn sẽ thêm chính sách XML vào JSON vào phần Xem phản hồi XML luồng có điều kiện được tạo tự động khi bạn tạo proxy API từ Thông số kỹ thuật OpenAPI. Chính sách này sẽ chuyển đổi phản hồi XML của mục tiêu thành tệp JSON của bạn.

Trước tiên, hãy gọi API để bạn có thể so sánh kết quả với kết quả nhận được sau khi thêm chính sách. Trong cửa sổ dòng lệnh, hãy thực thi lệnh cURL sau. Bạn đang gọi tài nguyên /xml của dịch vụ mục tiêu vốn trả về một khối XML đơn giản. Thay thế tên tổ chức của bạn trong URL.

curl http://<org_name>-test.apigee.net/mock-target-api/xml

Đáp

Bạn sẽ thấy phản hồi sau:

<root> 
  <city>San Jose</city> 
  <firstName>John</firstName> 
  <lastName>Doe</lastName> 
  <state>CA</state> 
</root>

Bây giờ, hãy làm một việc gì đó để chuyển đổi phản hồi XML thành JSON. Thêm chính sách XML vào JSON đối với luồng có điều kiện Xem phản hồi XML trong proxy API.

  1. Nhấp vào thẻ Phát triển ở góc trên cùng bên phải của API Mock-Target-API Trang tổng quan trong giao diện người dùng Edge.
    Thẻ Nhà phát triển
  2. Trong ngăn Điều hướng bên trái, dưới Proxy Endpoints > mặc định, hãy nhấp vào nút View Luồng có điều kiện để phản hồi XML.
    Chọn Xem phản hồi XML
  3. Nhấp vào nút +Bước ở dưới cùng, tương ứng với Phản hồi cho quy trình.
    Chọn +Bước
    Hộp thoại Thêm bước sẽ mở ra để hiển thị danh sách được phân loại gồm tất cả các chính sách mà bạn có thể thêm.
  4. Chuyển đến danh mục Dàn xếp rồi chọn XML sang JSON.
    Hộp thoại Thêm bước
  5. Giữ các giá trị mặc định cho Display Name (Tên hiển thị) và Tên.
  6. Nhấp vào Thêm. Chính sách XML cho JSON được áp dụng cho phản hồi.Đang áp dụng chính sách XML sang JSON
  7. Nhấp vào Lưu.

Bây giờ, bạn đã thêm chính sách, hãy gọi lại API bằng cURL. Lưu ý rằng bạn vẫn gọi cùng một tài nguyên /xml. Dịch vụ đích vẫn trả về khối XML, nhưng chính sách trong proxy API sẽ chuyển đổi phản hồi thành JSON. Tạo món này gọi điện:

curl http://<org_name>-test.apigee.net/mock-target-api/xml

Lưu ý: phản hồi XML được chuyển đổi thành JSON:

{"root":{"city":"San Jose","firstName":"John","lastName":"Doe","state":"CA"}}

Xin chúc mừng! Bạn đã thử nghiệm thành công việc thực thi chính sách được thêm vào luồng có điều kiện.