2015-07-06 5 views
6

मैं यह कर सकता:स्विगजर के साथ प्रतिक्रिया ऑब्जेक्ट का संदर्भ कैसे लें?

parameters: 
    avatarSizeParam: 
    name: size 
    in: query 
    description: Size of avatar. 
    enum: [32, 64] 
    required: false 
    type: integer 
    format: int32 

paths: 
    /my/path/avatar: 
    get: 
     parameters: 
     - $ref: '#/parameters/avatarSizeParam' 

अच्छा। स्वैगर parameters कुंजी को परिभाषित करता है जहां आप Parameter Objects को पुन: उपयोग करने के लिए परिभाषित कर सकते हैं।

responses: 
    notFoundResponse: 
    description: Entity not found. 
    schema: 
     $ref: '#/definitions/schema404' 

तो मैं मैं निम्नलिखित

paths: 
    /my/path/avatar: 
    get: 
     parameters: 
     - $ref: '#/parameters/avatarSizeParam' 
     responses: 
     - $ref: '#/responses/notFound' 

यह काम करने के लिए प्रतीत नहीं होता है करने के लिए मेरे पिछले पथ परिभाषा का विस्तार कर सकता है ग्रहण किया: यह भी एक responses कुंजी है, जहां आप की तरह तो Response Objects परिभाषित कर सकते हैं परिभाषित करता है तथापि। मैं the spec पर Operations Object पर वापस गया और देखा कि parameters एक संदर्भ वस्तु हो सकती है, लेकिन responses नहीं हो सकता है।

Operation Object definiton (partial)

एक जवाब परिभाषाएँ वस्तु (सबसे शीर्ष स्तर पर responses) यदि आप आइटम वहाँ संदर्भ नहीं दे सकता इजाजत देने की बात क्या है? क्या ऐसा करने का कोई तरीका है?

उत्तर

16

आप here देखते हैं, आप एक कुंजी के रूप HTTP स्थिति कोड को परिभाषित करने के लिए है, तो सही सिंटैक्स है:

paths: 
    /my/path/avatar: 
    get: 
     parameters: 
     - $ref: '#/parameters/avatarSizeParam' 
     responses: 
     404: 
      $ref: '#/responses/notFound' 
+0

धन्यवाद! हाँ यह बहुत समझ में आता है। भूल गए 'प्रतिक्रियाएं' एक वस्तु थीं और एक सरणी नहीं थी –

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