Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin
Bạn có thể sử dụng các chính sách đi kèm với Apigee Edge để điều khiển các tin nhắn truyền qua Proxy API. Thông qua các chính sách, bạn có thể:
- Chuyển đổi thông báo giữa các định dạng, chẳng hạn như từ XML sang JSON.
- Đặt các giá trị biến từ nội dung thông báo và tạo thông điệp từ các giá trị biến.
- Sử dụng mã quy trình, chẳng hạn như JavaScript, Java và Python để xử lý thông báo và dữ liệu trong phức tạp hơn.
Nhìn chung, khi sử dụng các chính sách này, bạn sẽ chỉ định dữ liệu đầu vào và đầu ra dưới dạng biến luồng. Tại thời gian chạy, Apigee Edge truy xuất giá trị đầu vào từ biến nguồn và ghi kết quả thành một biến đầu ra.
Chủ đề này giới thiệu các chức năng này. Để biết thông tin đầy đủ và kỹ thuật hơn, hãy xem cho mỗi chính sách.
Xử lý đơn giản đối với XML và JSON
Apigee Edge có các chính sách giúp việc chuyển đổi giữa XML và JSON dễ dàng hơn cũng như chuyển đổi XML bằng {8/}.
Chuyển đổi JSON sang XML
Chính sách về JSON sang XML lấy thông tin đầu vào JSON của bạn rồi chuyển đổi nó thành XML.
Trong ví dụ về chính sách sau đây, chính sách này sẽ lấy thông báo có định dạng JSON từ
Biến request
, sau đó thay thế giá trị biến bằng một thông báo có định dạng XML.
Đầu vào được chỉ định trong phần tử <Source>
, còn đầu ra được chỉ định
trong phần tử <OutputVariable>
.
<JSONToXML name="jsontoxml"> <Source>request</Source> <OutputVariable>request</OutputVariable> </JSONToXML>
Đang chuyển đổi XML sang JSON
Chính sách XML sang JSON chuyển đổi thông báo đầu vào XML thành JSON.
Trong ví dụ về chính sách sau đây, chính sách này sẽ nhận thông báo có định dạng XML từ
Biến response
, sau đó thay thế giá trị biến bằng một thông báo có định dạng JSON.
Đầu vào được chỉ định trong phần tử <Source>
, còn đầu ra được chỉ định
trong phần tử <OutputVariable>
.
<XMLToJSON name="ConvertToJSON"> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Chuyển đổi XML bằng RTB
Bạn có thể sử dụng XSL Biến đổi chính sách để chuyển đổi tin nhắn bằng PPID. Ví dụ: sau khi chuyển đổi tệp JSON tải dữ liệu sang XML, bạn có thể sử dụng chính sách Chuyển đổi {8/} cùng với một biểu định kiểu để thực hiện biến đổi bạn cần.
Trong ví dụ về chính sách sau đây, chính sách này sẽ nhận thông báo có định dạng XML từ
Biến response
, sau đó thay thế giá trị biến bằng một thông điệp được định dạng bằng
my_transform.xsl
Dữ liệu đầu vào được chỉ định trong phần tử <Source>
,
trong khi kết quả được chỉ định trong phần tử <OutputVariable>
.
<XSL name="TransformXML"> <ResourceURL>xsl://my_transform.xsl</ResourceURL> <Source>response</Source> <OutputVariable>response</OutputVariable> </XSL> <Source>request</Source> <ResourceURL>xsl://XSL-Transform-1.xsl</ResourceURL> <OutputVariable/>
Xử lý dữ liệu có thể thay đổi
Xử lý dữ liệu trong proxy thường chỉ liên quan đến việc xử lý dữ liệu trạng thái dưới dạng biến dòng giá trị. Thông thường, bạn có thể thực hiện việc này bằng cách sử dụng chính sách nhận hoặc đặt giá trị biến. Ví dụ: bạn có thể muốn định dạng các giá trị biến vào một thư hoặc trích xuất nội dung của thư để đặt giá trị cho biến.
Hãy nhớ xem các tài liệu tham khảo cho hai chính sách sau:
- Gửi tin nhắn để tạo thông báo từ các giá trị biến.
- Trích xuất biến để chỉ định biến từ nội dung thông báo.
Tạo các phép biến đổi phức tạp hơn
Để xử lý dữ liệu có độ phức tạp nằm ngoài khả năng của các chính sách đi kèm, bạn có thể sử dụng các ngôn ngữ quy trình như JavaScript, Java hoặc Python.
Nói chung, thao tác này liên quan đến việc viết mã bằng một trong các ngôn ngữ này, sau đó gọi mã từ một chính sách cụ thể cho ngôn ngữ đó. Để biết thêm thông tin về vấn đề này, hãy xem bài viết Kết hợp quy trình .