向 WSO2 ESB 发送 POST 请求时出错

Error while sending POST request to WSO2 ESB

我已经使用 WSO2 ESB Twitter 连接器 创建了一个推文代理。我的推文代理看起来像这样。

 <?xml version="1.0" encoding="UTF-8"?>
    <proxy name="Tweet" startOnLoad="true" trace="disable"
      transports="http https" xmlns="http://ws.apache.org/ns/synapse">
      <target>
        <inSequence>
          <property expression="json-eval($.message)" name="Tweet"
            scope="default" type="STRING"/>
          <twitter.init>
            <consumerKey>xxxxxxxxxx</consumerKey>
            <consumerSecret>xxxxxxxxxxxx</consumerSecret>
            <accessToken>xxxxxxxxxxxxx</accessToken>
            <accessTokenSecret>xxxxxxxxxx</accessTokenSecret>
          </twitter.init>
          <twitter.updateStatus>
            <status>{$ctx:Tweet}</status>
          </twitter.updateStatus>
          <respond/>
        </inSequence>
        <outSequence/>
        <faultSequence/>
      </target>
    </proxy>

项目部署没有任何错误,但是当我向 Post 人发出 POST 推文请求时,我收到错误状态 170带有消息 缺少必需的参数:状态 。 Post 请求由这样的 json 组成。

 {"Content-Type":"application/json","payload":"{\"message\":\"Hellow WSO2 ESB!!!! #WSO2 #Test\"}"}

在 ESB 服务器控制台中,它给出了这样的错误

ERROR - SynapseJsonPath #stringValueOf. Error evaluating JSON Path <$.message>. Returning empty result. Error>>> invalid path

我收到此错误的任何特定原因?如何克服这个问题?

像这样更改 属性 表达式。

expression="json-eval($.payload.message)"