2015-02-17 10 views
5

में एक डमी रीस्ट एपीआई को कैसे कार्यान्वित करें मैं डब्लूएसओ 2 ईएसबी में एक साधारण दिल की धड़कन आरईएसटी एपीआई लागू करने की कोशिश कर रहा हूं और प्रतिक्रिया वापस पाने में सक्षम नहीं हूं। नीचे एपीआईWSO2 ESB

<api xmlns="http://ws.apache.org/ns/synapse" name="HealthCheckAPI" context="/HealthCheck"> 
    <resource methods="GET" url-mapping="/status" faultSequence="fault"> 
     <inSequence> 
     <payloadFactory media-type="json"> 
      <format>{"Status":"OK"}</format> 
      <args></args> 
     </payloadFactory> 
     <log> 
      <property name="JSON-Payload" expression="json-eval($.)"></property> 
     </log> 
     <property name="messageType" value="application/json" scope="axis2" type="STRING"></property> 
     <respond></respond> 
     </inSequence> 
    </resource> 
</api> 

जब मैं एपीआई को घुमाता हूं, प्रतिक्रिया शून्य लंबाई होती है। क्या गलत हो सकता है?

कर्ल -v http://localhost:8280/HealthCheck/status

उत्तर

6

आपको निम्नलिखित संपत्ति सेट करने की आवश्यकता है।

<property name="NO_ENTITY_BODY" scope="axis2" action="remove"></property> 

कृपया काम कर उदाहरण

<api xmlns="http://ws.apache.org/ns/synapse" name="HealthCheckAPI" context="/HealthCheck"> 
    <resource methods="GET" url-mapping="/status" faultSequence="fault"> 
     <inSequence> 

     <payloadFactory media-type="json"> 
      <format>{"Status":"OK"}</format> 
      <args></args> 
     </payloadFactory> 
     <log> 
      <property name="JSON-Payload" expression="json-eval($.)"></property> 
     </log> 

     <property name="NO_ENTITY_BODY" scope="axis2" action="remove"></property> 
     <property name="messageType" value="application/json" scope="axis2" type="STRING"></property> 
     <respond></respond> 
     </inSequence> 
    </resource> 
</api> 
नहीं
0

शिबू, अपनी संपत्ति मध्यस्थ में अभिव्यक्ति निम्नलिखित का प्रयोग करें। जेसन-eval ($ स्थिति)

+0

यकीन है कि कैसे है कि मदद करता है लगता है। पूरे संदेश को प्रिंट करने के बजाय, यह केवल "ठीक" प्रिंट करेगा – Shibu

संबंधित मुद्दे