Bước 4: Thêm chính sách

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ờ thì bạn đã thay đổi điểm cuối đích và có thể thêm chính sách vào proxy.

Chính sách là một thành phần Edge mà bạn có thể đính kèm vào nhiều điểm trong luồng thông báo thông qua các proxy API. Các chính sách có thể chuyển đổi định dạng thông báo, thực thi biện pháp kiểm soát quyền truy cập, gọi dịch vụ từ xa, uỷ quyền cho người dùng, kiểm tra nội dung tin nhắn để phát hiện các mối đe doạ tiềm ẩn và làm nhiều việc khác.

Trong hướng dẫn này, bạn sẽ thêm chính sách XMLtoJSON vào proxy. Chính sách này chuyển đổi tải trọng của thông báo XML thành JSON. Thao tác này cũng thay đổi tiêu đề Content-Type của phản hồi.

Cách thêm chính sách XML vào JSON vào proxy của bạn:

  1. Mở Giao diện người dùng Edge trong trình duyệt rồi đăng nhập.
  2. Nhấp vào API Proxy trong cửa sổ chính rồi chọn một proxy. Đối với ví dụ này, hãy chọn proxy mà bạn đã tạo trong Bước 1: Tạo proxy API.
  3. Nhấp vào thẻ Phát triển:

    Edge sẽ hiển thị API Proxy Editor (Trình chỉnh sửa proxy).

  4. Trong ngăn Navigator (Trình điều hướng), hãy nhấp vào Proxy Endpoints > default > PreFlow (Điểm cuối proxy > mặc định > PreFlow):

    Edge cho thấy Trình chỉnh sửa luồng:

    Ngoài ra, Edge hiển thị cấu hình Điểm cuối proxy mặc định trong ngăn Code (Mã):

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ProxyEndpoint name="default">
      <Description/>
      <FaultRules/>
      <PreFlow name="PreFlow">
        <Request/>
        <Response/>
      </PreFlow>
      <PostFlow name="PostFlow">
        <Request/>
        <Response/>
      </PostFlow>
      <Flows/>
      <HTTPProxyConnection>
        <BasePath>/getstarted</BasePath>
        <Properties/>
        <VirtualHost>default</VirtualHost>
        <VirtualHost>secure</VirtualHost>
      </HTTPProxyConnection>
      <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
      </RouteRule>
    </ProxyEndpoint>
  5. Để thêm một chính sách vào proxy, hãy nhấp vào nút + Step trong phản hồi PreFlow (nửa dưới của Trình chỉnh sửa quy trình):

    Edge hiển thị một danh sách được phân loại các chính sách trong hộp thoại Add (Thêm) mà bạn có thể thêm vào quy trình của mình:

  6. Di chuyển xuống rồi chọn chính sách XML sang JSON trong danh mục Dàn xếp.
  7. Để nguyên tên mặc định và nhấp vào Thêm.

    Edge sẽ đính kèm chính sách mới vào PreFlow của phản hồi:

    Xin lưu ý rằng khi bạn nhấp vào Add (Thêm), Edge sẽ thực hiện những việc sau:

    • Thêm chính sách mới trong phần Chính sách trong ngăn Trình điều hướng.
    • Thêm chính sách XML vào JSON trong ngăn Flow (Luồng).
    • Hiển thị XML cấu hình của chính sách trong ngăn .
  8. Nhấp vào Lưu để lưu bản sửa đổi hiện tại cùng với các thay đổi của bạn.

Bây giờ, hãy thử xem! Trong cửa sổ dòng lệnh, hãy thực thi lệnh curl sau đây:

curl https://org_name-test.apigee.net/getstarted

Trong trường hợp:

  • org_name là tên tổ chức mà Apigee được chỉ định cho bạn khi bạn tạo tài khoản Apigee.
  • -test là môi trường. Bạn đã triển khai proxy mới của mình đến môi trường "kiểm thử" trong Bước 1: Tạo proxy API.
  • /getstarted là Đường dẫn cơ sở proxy.

Ngoài ra, bạn có thể mở chính URL đó trong một trình duyệt.

Bạn sẽ nhận được phản hồi như sau:

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

Nếu phần nội dung của phản hồi không giống như sau, hãy kiểm tra xem:

  1. Điểm cuối mục tiêu của bạn là "https://mocktarget.apigee.net/xml", như mô tả trong Bước 3: Thay đổi điểm cuối mục tiêu:
    • Nếu nhận được phản hồi là "Hello, Customer!", thì bạn cần thêm "/xml" vào cuối điểm cuối đích.
    • Nếu nhận được mã 404, hãy kiểm tra để đảm bảo rằng bạn đang truy cập vào "apigee.net" chứ không phải "apigee.com".
  2. Bản sửa đổi proxy mới nhất đã được triển khai. Hãy thử triển khai lại proxy API như mô tả trong phần Triển khai và huỷ triển khai proxy API.

Để xem các tiêu đề phản hồi và yêu cầu HTTP, hãy bật độ chi tiết trong curl bằng tuỳ chọn -vs (v làm cho phản hồi chi tiết, nhưng s chặn một số chi tiết ít thú vị hơn). Ví dụ:

curl -vs https://ahamilton-eval-test.apigee.net/getstarted | python -m json.tool

Bạn sẽ nhận được phản hồi có dạng như sau. Lưu ý rằng tiêu đề Content-Type trong phản hồi là "application/json". Chính sách XML sang JSON sẽ thay đổi tiêu đề trước khi gửi lại phản hồi.

*   Trying 10.20.30.40...
* TCP_NODELAY set
* Connected to ahamilton-eval-test.apigee.net (10.20.30.40) port 443 (#0)
...
> GET /getstarted HTTP/1.1
> Host: ahamilton-eval-test.apigee.net
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 25 May 2018 16:20:00 GMT
< Content-Type: application/json;charset=UTF-8
< Content-Length: 77
< Connection: keep-alive
< X-Powered-By: Apigee
< Access-Control-Allow-Origin: *
...
{ [77 bytes data]
{
  "root": {
    "city": "San Jose",
    "firstName": "John",
    "lastName": "Doe",
    "state": "CA"
  }
}

Bước tiếp theo

Tìm hiểu sâu hơn