Ủy quyền một dịch vụ SOAP

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

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

  • Tạo proxy API Edge từ tệp WSDL.
  • Tìm hiểu sự khác biệt giữa loại proxy RESTful SOAP và SOAP truyền qua proxy.

Trong hướng dẫn này, bạn sẽ tìm hiểu cách đặt proxy API Edge lên web dựa trên SOAP .

Hướng dẫn này minh hoạ cách tạo API RESTful mới trước nền tảng SOAP . Mặc dù không được mô tả chi tiết ở đây, nhưng bạn cũng có thể tạo proxy truyền qua chấp nhận tải trọng SOAP và truyền tải trọng đó đến dịch vụ phụ trợ.

Bạn cần có

Tạo proxy

Tại đây, bạn sẽ yêu cầu Edge tạo proxy trước dịch vụ SOAP. Có hai loại proxy API SOAP:

  • Loại proxy REST-SOAP-REST tạo một API RESTful mới có chức năng dịch thành SOAP. Ứng dụng gọi hàm này giống như các dịch vụ RESTful khác, chuyển truy vấn các tham số mà dịch vụ phụ trợ cần. Edge sẽ chuyển dữ liệu này thành tải trọng SOAP mà dịch vụ mong đợi.
  • Loại proxy truyền qua cho phép ứng dụng chỉ cần truyền một tải trọng SOAP. Đây là một cách để các cuộc gọi dịch vụ SOAP được hưởng lợi nhờ các tính năng quản lý Edge.

Edge

Cách proxy dịch vụ SOAP bằng giao diện người dùng Edge:

  1. Đăng nhập vào apigee.com/edge.
  2. Chọn Phát triển > Proxy API trong thanh điều hướng bên trái.
  3. Nhấp vào +Proxy.
  4. Nhấp vào Dịch vụ SOAP.
  5. Trên trang Chi tiết proxy, hãy nhập thông tin sau:

    Trường Mô tả
    Nguồn WSDL

    Chọn: URL

    Sao chép và dán URL WSLD sau vào trường Enter URL (Nhập URL):

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    Nhấp vào: Xác thực

    Apigee Edge nhận tệp WSDL và đọc tệp này để khám phá danh sách các hoạt động mà dịch vụ SOAP hỗ trợ.

    Tên

    Giữ nguyên: delayedstockquote

    Đây là tên cho proxy API mà bạn đang tạo.

    Đường dẫn cơ sở Giữ nguyên: /delayedstockquote
    Nội dung mô tả (Không bắt buộc) Thêm nội dung mô tả, chẳng hạn như: Proxy API WSDL API trích dẫn chứng khoán
  6. Nhấp vào Tiếp theo.
  7. Trên trang Các chính sách chung, trong phần Bảo mật: Uỷ quyền, hãy chọn Pass through (không uỷ quyền).
  8. Nhấp vào Tiếp theo.
  9. Trên trang Hoạt động WSDL, hãy chọn: REST to SOAP to REST.

    Sau khi bạn chọn loại proxy, Edge sẽ hiển thị danh sách các hoạt động mà thì hệ thống sẽ tạo các đường dẫn API REST. Danh sách này cho phép bạn chọn trong số các thao tác được tìm thấy trong WSDL (trong trường hợp bạn gặp một thao tác cụ thể mà bạn đang tìm kiếm). Lưu ý rằng bảng cũng hiển thị các tài nguyên mà Ứng dụng REST có thể dùng để gọi dịch vụ SOAP phụ trợ.

    Giữ nguyên tất cả các lựa chọn khác trên trang.

  10. Nhấp vào Tiếp theo.
  11. Chấp nhận các chế độ mặc định của Virtual Host (Máy chủ lưu trữ ảo) bằng cách nhấp vào Next (Tiếp theo).
  12. Trên trang Tóm tắt, trong mục Triển khai không bắt buộc, hãy nhấp vào Kiểm thử rồi nhấp vào Tạo và triển khai.

    Edge tạo một proxy API RESTful và triển khai proxy đó trong môi trường test. Từ WSDL, công cụ này xác định thông tin các thao tác được hỗ trợ, tham số đầu vào, v.v. Edge đề xuất phương thức HTTP nào nên sử dụng cho từng toán tử. Thông thường, Edge dịch các hoạt động thành các yêu cầu GET, tức là các yêu cầu này có thể lưu vào bộ nhớ đệm. Edge cũng thiết lập điểm cuối đích phụ trợ, có thể khác nhau tuỳ theo thao tác SOAP.

    Đó là tất cả, trừ phi bạn đang tuỳ chỉnh proxy API mới (và bạn không có trong hướng dẫn này), có. Bạn có thể chuyển sang thử nghiệm proxy API mới.

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

Cách proxy dịch vụ SOAP bằng giao diện người dùng Classic Edge:

  1. Đăng nhập vào http://ms-ip:9000, trong đó ms-ip là Địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý.
  2. Chọn APIs > Proxy API trong thanh điều hướng trên cùng.
  3. Nhấp vào + API Proxy.
  4. Nhấp vào Dịch vụ SOAP.
  5. Trên trang Chi tiết proxy, hãy nhập thông tin sau:

    Trường Mô tả
    WSDL

    Chọn: URL mẫu

    Sau đó chọn:
    ...delayedstockquote.asmx?WSDL

    Nhấp vào: Xác thực

    Apigee Edge nhận tệp WSDL và đọc tệp này để khám phá danh sách các hoạt động mà dịch vụ SOAP hỗ trợ.

    Tên proxy

    Nhập: delayedstockquote

    Đây là tên cho proxy mà bạn đang tạo.

    Đường dẫn cơ sở proxyMô tả Giữ nguyên.
  6. Nhấp vào Tiếp theo.
  7. Trên trang WSDL, hãy thực hiện các lựa chọn sau:
    Trong trường này làm việc này
    Loại proxy API

    Chọn: REST sang SOAP sang REST

    Sau khi bạn chọn loại proxy, Edge sẽ hiển thị danh sách các hoạt động mà thì hệ thống sẽ tạo các đường dẫn API REST, như minh hoạ ở đây. Danh sách này cho bạn cơ hội chọn trong số các thao tác được tìm thấy trong WSDL (trong trường hợp bạn gặp một thao tác cụ thể mà bạn đang tìm kiếm). Lưu ý rằng bảng cũng hiển thị các tài nguyên mà Ứng dụng REST có thể dùng để gọi dịch vụ SOAP phụ trợ.

    Hiện tại, bạn chỉ cần chọn nhóm thao tác đầu tiên.

    Loại cổng: Delayed stockSoap Chọn cả 3 hoạt động WSDL. Giữ nguyên các chế độ cài đặt khác.

  8. Nhấp vào Tiếp theo.
  9. Trên trang Bảo mật, hãy chọn Pass through (không có).
  10. Nhấp vào Tiếp theo.
  11. Chấp nhận các giá trị mặc định của Máy chủ ảo rồi nhấp vào Next (Tiếp theo).
  12. Trên trang Build (Bản dựng), hãy chấp nhận các giá trị mặc định rồi nhấp vào Build and Deploy (Tạo và triển khai) để yêu cầu Edge bắt đầu tạo proxy.

    Edge tạo một proxy API RESTful. Từ WSDL, công cụ này xác định thông tin các thao tác được hỗ trợ, tham số đầu vào, v.v. Edge đề xuất phương thức HTTP nào nên sử dụng cho từng toán tử. Thông thường, Edge dịch các hoạt động thành các yêu cầu GET, tức là các yêu cầu này có thể lưu vào bộ nhớ đệm. Edge cũng thiết lập điểm cuối đích phụ trợ, có thể khác nhau tuỳ theo thao tác SOAP.

    Đó là tất cả, trừ khi bạn đang tùy chỉnh proxy mới (và bạn không có trong hướng dẫn này), đó là tất cả có. Bạn có thể chuyển sang thử nghiệm proxy mới.

Thử nghiệm proxy

Để dùng thử proxy bạn đã tạo, hãy mở dấu nhắc lệnh và sử dụng cURL. Nhập lệnh bên dưới, trong đó:

  • ORG là tên của tổ chức Edge mà bạn đã tạo proxy.
  • ENV là môi trường mà proxy được triển khai.
  • Miền tương ứng với phiên bản Edge mà bạn đang sử dụng.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Ví dụ: nếu tổ chức của bạn là docfood thì môi trường sẽ là test và đang sử dụng đám mây của Edge Enterprise, nên bạn sẽ chạy một lệnh như sau:

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

Nếu đã nhập GOOG cho tham số truy vấn StockSymbol, bạn sẽ nhận được giá hiện tại của cổ phiếu Loại C của Alphabet Inc. Ví dụ:

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

Tải OpenAPI được tạo tự động Thông số kỹ thuật

Khi bạn proxy một dịch vụ SOAP bằng cách sử dụng "REST sang SOAP sang REST", Edge sẽ tự động tạo Thông số kỹ thuật OpenAPI. Bạn có thể sử dụng Thông số kỹ thuật OpenAPI để tạo tài liệu API cho API.

Để nhận Thông số kỹ thuật OpenAPI, chỉ cần truy cập URL này:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

Điểm cộng: Cách thực hiện bạn có tìm ra tham số tài nguyên, động từ và truy vấn nào để sử dụng không?

Trong lệnh gọi API kiểm thử, bạn đã sử dụng một tài nguyên và tham số truy vấn cụ thể trong lệnh gọi cURL vào dịch vụ SOAP phụ trợ. Nhưng làm cách nào để tự tìm hiểu?

Tài nguyên và động từ

Trong trình hướng dẫn proxy API khi tạo proxy, bạn đã thấy cách hoạt động của SOAP sẽ tương ứng với các động từ và tài nguyên API. Nhưng nếu bạn không viết ra những tài liệu đó, thì sau đây là cách bạn sẽ tìm hiểu sau khi proxy được tạo.

Trên tab Phát triển của proxy API, trong ngăn Trình điều hướng bên trái, bạn sẽ thấy một danh sách luồng trong Điểm cuối proxy. Nhấp vào quy trình mà bạn quan tâm. Ví dụ: bạn nên dùng quy trình GetQuote (Lấy báo giá). Sau đó, xem XML trong ngăn Mã, hình ảnh này cho thấy đường dẫn tài nguyên và động từ cho luồng trong <Điều kiện> phần tử: /quoteGET.

Tham số truy vấn

Khi chọn quy trình GetQuote, hãy nhấp vào chính sách đầu tiên trong biểu đồ chế độ xem luồng. Bạn phải chọn chính sách Biến Trích xuất để ghi lại các tham số truy vấn dự kiến sẽ được thông qua: StockSymbolLicenseKey. (Nếu bạn sử dụng web bạn có thể tìm kiếm dịch vụ SOAP, dịch vụ này cho bạn biết cần chuyển cho LicenseKey hay không.)

Những tham số truy vấn đã thu thập sẽ được lưu dưới dạng biến và được chính sách tiếp theo sử dụng để tạo thông báo SOAP.