Yêu cầu phát trực tuyến và phản hồi

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 chủ đề này

Sau khi đọc chủ đề này, bạn sẽ biết:

  • Định nghĩa về yêu cầu và phản hồi phát trực tiếp trên Apigee Edge
  • Trường hợp nên sử dụng tính năng truyền trực tuyến yêu cầu và phản hồi
  • Cách bật tính năng truyền trực tuyến yêu cầu và phản hồi

Truyền trực tuyến yêu cầu và phản hồi là gì?

Theo mặc định, truyền trực tuyến HTTP bị tắt và yêu cầu HTTP và tải trọng phản hồi được ghi vào vùng đệm trong bộ nhớ trước khi chúng được xử lý bởi quy trình proxy API. Bạn có thể thay đổi chế độ này bằng cách bật truyền trực tuyến. Khi bật tính năng truyền trực tuyến, các tải trọng yêu cầu và phản hồi truyền trực tuyến mà không sửa đổi ứng dụng khách (đối với phản hồi) và điểm cuối đích (đối với yêu cầu).

Khi nào tôi nên bật tính năng phát trực tuyến?

Nếu proxy API của bạn xử lý các yêu cầu và/hoặc phản hồi rất lớn (để biết giới hạn về kích thước, hãy xem Những điều khác tôi nên biết về việc phát trực tiếp bên dưới), bạn có thể bật phát trực tuyến.

Tôi nên biết thêm điều gì về việc phát trực tiếp?

Giới hạn kích thước tải trọng thư ở mức 10 MB trong Edge Cloud và Đám mây riêng tư, ngay cả khi đã bật tính năng truyền trực tuyến. Trong các yêu cầu và phản hồi không được phát trực tuyến, vượt quá kích thước đó dẫn đến lỗi protocol.http.TooBigBody.

Trong quá trình triển khai Edge dành cho đám mây riêng tư, bạn có thể sửa đổi kích thước của yêu cầu/phản hồi không được truyền trực tuyến tối đa. Hãy nhớ kiểm thử trước khi triển khai thay đổi này lên phiên bản phát hành công khai.

  • Đối với các bản phát hành Edge cho Private Cloud trước ngày 4.16.01:

    Trên tất cả Trình xử lý thư, hãy chỉnh sửa tệp http.properties để tăng giới hạn trong tham số HTTPResponse.body.buffer.limit rồi khởi động lại Trình xử lý thư.
  • Đối với bản phát hành Edge for Private Cloud 4.16.01 trở lên:
    1. Chỉnh sửa tệp /<inst_root>/apigee/customer/application/message-processor.properties. Nếu tệp đó không tồn tại, hãy tạo tệp.

    2. Đặt conf_http_HTTPResponse.body.buffer.limit thuộc tính phụ trong message-processor.properties. Cho ví dụ:
      conf_http_HTTPResponse.body.buffer.limit=5m

    3. Khởi động lại Trình xử lý thư:
      &gt; /<inst_root>/apigee/apigee-service/bin/apigee-service cạnh-message-processor Khởi động lại

    4. Lặp lại đối với tất cả Trình xử lý thư.

Cách bật tính năng truyền trực tuyến yêu cầu và phản hồi

Để bật tính năng truyền trực tuyến yêu cầu, bạn cần thêm request.streaming.enabled với các định nghĩa ProxyEndpoint và TargetEndpoint trong gói proxy và đặt giá trị đó thành true Tương tự, hãy đặt thuộc tính response.streaming.enabled để bật tính năng truyền trực tuyến phản hồi.

Bạn có thể tìm các tệp cấu hình này trong giao diện người dùng quản lý trong chế độ xem Phát triển dành cho proxy. Nếu bạn đang phát triển cục bộ thì các tệp định nghĩa này sẽ nằm trong apiproxy/proxiesapiproxy/targets.

Mẫu này cho biết cách bật cả truyền trực tuyến yêu cầu và phản hồi trong TargetEndpoint định nghĩa.

<TargetEndpoint name="default">
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net</URL>
    <Properties>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
      <Property name="supports.http10">true</Property>
      <Property name="request.retain.headers">User-Agent,Referer,Accept-Language</Property>
      <Property name="retain.queryparams">apikey</Property>
    </Properties>
  </HTTPTargetConnection>
</TargetEndpoint>

Ví dụ này cho thấy cách bật tính năng phản hồi và yêu cầu truyền trực tuyến trong ProxyEndpoint định nghĩa:

<ProxyEndpoint name="default">
  <HTTPProxyConnection>
    <BasePath>/v1/weather</BasePath>
    <Properties>
      <Property name="allow.http10">true</Property>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
    </Properties>
  </HTTPProxyConnection>
</ProxyEndpoint>

Để biết thêm thông tin về cách định cấu hình định nghĩa điểm cuối, hãy xem bài viết Tài liệu tham khảo về thuộc tính thiết bị đầu cuối.

Mã có liên quan mẫu

Các mẫu proxy API trên GitHub rất dễ tải xuống và sử dụng. Hãy xem bài viết Sử dụng proxy API mẫu để biết thông tin về tải xuống và sử dụng các mẫu.

Các proxy mẫu có tính năng phát trực tiếp bao gồm:

  • truyền trực tuyến – Minh hoạ một proxy API được định cấu hình để truyền trực tuyến qua HTTP.
  • Chú thích cạnh: Trình tạo URL đã ký – Minh hoạ phương pháp hay nhất về việc tạo URL đã ký URL để truy cập các tệp lớn thay vì cố gắng truyền trực tuyến các tệp đó trong yêu cầu/phản hồi.