Tạo, truy cập và chuyển đổi thông báo

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 để thao tác với các thông báo chuyển qua proxy API. Nhờ các chính sách, bạn có thể:

  • Chuyển đổi thông điệp giữa các định dạng, chẳng hạn như từ XML sang JSON.
  • Đặt giá trị biến từ nội dung tin nhắn và tạo tin nhắn từ giá trị biến.
  • Hãy 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 theo những cách phức tạp hơn.

Nhìn chung, khi sử dụng các chính sách này, bạn 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ừ một biến nguồn và ghi giá trị đầu ra vào một biến đầu ra.

Chủ đề này giới thiệu các chức năng này. Để biết thêm thông tin kỹ thuật và đầy đủ hơn, hãy xem tài liệu tham khảo về chính sách cho từng loại.

Xử lý đơn giản cho XML và JSON

Apigee Edge có các chính sách giúp 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ề việc chuyển đổi JSON sang XML sẽ lấy dữ liệu đầu vào JSON và chuyển đổi thành XML.

Trong ví dụ về chính sách sau, chính sách sẽ lấy một 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, chính sách sẽ lấy một 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. Dữ liệu đầu vào được chỉ định trong phần tử <Source>, còn dữ liệu đầ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 PPID

Bạn có thể sử dụng Chính sách chuyển đổi XSL để chuyển đổi thông điệp bằng giờ cho phép người dùng phân phối hàng hoá theo nhu cầu (PPID). Ví dụ: sau khi chuyển đổi tải trọng JSON sang XML, bạn có thể sử dụng chính sách Chuyển đổi XSL với một trang kiểu để thực hiện chuyển đổi mà bạn cần.

Trong ví dụ về chính sách sau, chính sách sẽ lấy một 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 do my_transform.xsl định dạng. Đầu vào được chỉ định trong phần tử <Source>, còn đầu ra đượ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 biến

Việc 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 các giá trị biến luồng. Thông thường, bạn có thể thực hiện việc này bằng cách sử dụng một chính sách lấy hoặc đặt giá trị biến. Ví dụ: bạn có thể muốn định hình các giá trị biến thành một thông báo hoặc trích xuất nội dung của một thông báo để đặt giá trị biến.

Hãy nhớ xem các tài liệu tham khảo cho hai chính sách sau:

Tạo các phép biến đổi phức tạp hơn

Đối với việc 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.

Nhìn chung, quá trình này bao gồm 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 dành riêng cho ngôn ngữ đó. Để biết thêm về vấn đề này, hãy xem phần Tích hợp mã quy trình.