【问题标题】:Cannot Read JSON request body parameters in wso2 ESB as an api无法将 wso2 ESB 中的 JSON 请求正文参数作为 api 读取
【发布时间】:2016-04-19 06:56:46
【问题描述】:

我在 WSO2 ESB (4.8.1) 中创建了一个 API,我想用请求正文向该 API 发送一个 PUT 请求。我试过sample 我想在定义的 API 的序列中记录一个属性值。

这是我的请求正文:

这是我尝试记录位置名称的方式:

但我收到这样的错误:

(错误 - SynapseJsonPath #stringValueOf。评估 JSON 路径时出错。返回空结果。错误>>> 无效路径)

那么我怎样才能读取这些值呢?

【问题讨论】:

  • 由于您发布的图像仅显示文本,您可能应该编辑您的问题以包含实际文本,以便请求和错误都可以搜索。
  • 感谢您的建议。我已从我的问题中的给定链接中接受了请求。当我尝试以文本形式发布时,收到一条错误消息,指出我的代码要被格式化。这就是我添加打印屏幕的原因
  • 你能确认一下$。在日志中打印完整的 JSON 有效负载?

标签: json wso2 wso2esb jsonpath


【解决方案1】:

为了满足您的要求,您应该发送“Content-Type”HTTP 标头,请求如下所示,

    "Content-Type : application/json"

enter image description here

然后您可以像下面这样记录特定的 JSON 元素。

 <log>
    <property name="location" expression="json-eval($.coordinates.location[0].name)"></property>
 </log>

然后你可以看到以下日志,

enter image description here

谢谢。

【讨论】:

    【解决方案2】:
    If you want to get single variable from user in json request you can use this code 
    
    
    Use This json:
        {
    
        "namee":"UsmanYaqooooooooooob"
        }
    
    
    Api Code: 
            <api xmlns="http://ws.apache.org/ns/synapse" name="Hello" context="/hello">
               <resource methods="POST" uri-template="/post">
                  <inSequence>
                     <log level="custom">
                        <property name="===========inSequence" value="****"></property>
                        <property name="locationsssssssss" expression="json-eval(.namee)"></property>
                     </log>
                     <payloadFactory media-type="json">
                        <format>{"hello":"world"}</format>
                        <args></args>
                     </payloadFactory>
                     <property name="messageType" value="text/xml"></property>
                     <respond></respond>
                  </inSequence>
               </resource>
            </api>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      相关资源
      最近更新 更多