[英]Howto extract data from the JSON body of REST request inside a WSO2 ESB Synapse handler
我正在為WSO2 ESB編寫自定義處理程序,以根據輸入請求內容構造身份驗證憑據。 現在我所擁有的是這樣的:
public boolean handleRequest(MessageContext context) {
// TODO: extract relevant information (clientId) from JSON request body
String clientId;
Map<String, String> headers = (Map<String, String>) ((Axis2MessageContext) context).getAxis2MessageContext().getProperty(
org.apache.axis2.context.MessageContext.TRANSPORT_HEADERS);
setAuthorization(headers, clientId);
return true;
}
我找不到有關如何訪問Synapse處理程序中的REST JSON請求主體的文檔。 有任何想法嗎? 可以在處理程序運行之前定義一個屬性,並使用String clientId = (String)context.getProperty("clientId")
類的內容來捕獲它嗎?
您可以嘗試跟隨;
// Getting the json payload to string
String jsonPayloadToString = JsonUtil.jsonPayloadToString(((Axis2MessageContext) context).getAxis2MessageContext());
// Make a json object
JSONObject jsonBody = new JSONObject(jsonPayloadToString);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.