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

Sau khi thay đổi điểm cuối đích, bạn có thể thêm chính sách cho proxy của bạn.

Chính sách là một thành phần Edge mà bạn có thể đính kèm vào các điểm khác nhau trong thông báo thông qua proxy API. Các chính sách có thể biến đổi định dạng thông báo, thực thi chế độ kiểm soát quyền truy cập, gọi các 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 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ách thêm chính sách XML sang JSON vào proxy của bạn:

  1. Mở Edge UI 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. Trong ví dụ này, chọn proxy mà bạn đã tạo ở Bước 1: Tạo proxy API.
  3. Nhấp vào thẻ Phát triển:

    Edge hiển thị Trình chỉnh sửa proxy API.

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

    Edge hiển thị 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 :

    <?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 chính sách vào proxy của bạn, hãy nhấp vào nút + Bước trong phản hồi PreFlow (nửa dưới của Trình chỉnh sửa Flow):

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

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

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

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

    • Thêm chính sách mới trong mục Chính sách trê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 XML cấu hình của chính sách trong ngăn Code (Mã).
  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.

Giờ hãy dùng thử! Trong cửa sổ dòng lệnh, hãy thực thi lệnh curl sau:

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

Trong trường hợp:

  • org_name là tên tổ chức mà Apigee 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 cho "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ở cùng một URL đó trong một trình duyệt.

Bạn sẽ nhận được phản hồi 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 để đảm bảo:

  1. Điểm cuối mục tiêu của bạn là "https://mocktarget.apigee.net/xml", như được mô tả trong Bước 3: Thay đổi điểm cuối mục tiêu:
    • Nếu bạn nhận được thông báo "Xin chào quý khách!" làm phản hồi, thì bạn cần nối "/xml" đến cuối của điểm cuối mục tiêu.
    • Nếu bạn gặp lỗi 404, hãy kiểm tra xem bạn có đang truy cập vào "apigee.net" không và không "apigee.com".
  2. Bản sửa đổi proxy mới nhất đã được triển khai. Thử triển khai lại proxy API theo cách mô tả trong việc Triển khai và huỷ triển khai Proxy API.

Để xem 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 tạo câu trả lời chi tiết, nhưng s 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 giống như sau. Lưu ý rằng Tiêu đề Content-Type trong phản hồi là "application/json". Chính sách từ XML sang JSON 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