2016-02-29 4 views
2

Я новичок в Wordnik и Swagger в целом. Я взаимодействую с ним через Node.js JS module.Как получить имена функций JA API Swagger API?

При взгляде на сгенерированных страниц Кураж UI, такие как образец Petstore Swagger один:

enter image description here

это трудно сказать, что функции JavaScript должен быть при запросе к серверу.

По функциям JavaScript, я имею в виду похож на пример образца PetStore (от чванства-JS документов):

var Swagger = require('swagger-client'); 

var client = new Swagger({ 
    url: 'http://petstore.swagger.io/v2/swagger.json', 
    success: function() { 
    client.pet.getPetById({petId:7},{responseContentType: 'application/json'},function(pet){ 
     console.log('pet', pet); 
    }); 
    } 
}); 

После подключения к swagger.json, как они знают, функция для запроса функции getPetById(), когда docs показывает только GET /pet/{petId}?

При использовании API Wordnik, я нашел это общее правило для использования функции get{DATATYPE}(){DATATYPE} заменен соответствующим значением, конечно), но модель порвала с getPronunciation() — это не Работа. Я не верю, что документы говорят это где угодно.

Как я могу найти функции JS для API Swagger?

+0

Это написано в файле swagger.json, ищите 'operationId'. – Shanoor

+0

@ShanShan Где находится файл swagger.json? –

+0

Для примера petstore используется 'operationId': http://petstore.swagger.io/v2/swagger.json. Вы можете увидеть его в документе: http://swagger.io/specification/ (search for operationId) , – Shanoor

ответ

3

Имя метода JavaScript совпадает с полем nickname и/или operationId каждой операции в документе Swagger, в зависимости от того, какой из них доступен.

Это пример из Wordnik:

"path": "/word.{format}/{word}/pronunciations", 
"description": "", 
"operations": [ 
    { 
    ... 
    "nickname": "getTextPronunciations", 
    "responseClass": "List[TextPron]" 
    } 
    ] 
}, 

В этом примере getTextPronunciations это имя метода JS.

В Wordnik вы можете получить swagger.json, нажав на кнопку Raw в разделе слова документа (рядом с кнопкой Expand Operations). Вы можете найти все остальные файлы swagger.json здесь: http://developer.wordnik.com/v4/

+0

Я не видел поля ник. Благодаря тонну! –

+1

FYI 'nickname' является конструкцией определения swagger 1.2. Для swagger 2.0 вы должны использовать 'operationId', который является необязательным. Если нет, он будет автогенерировать его. В общем, вы всегда можете ссылаться на массив apis, чтобы увидеть, что находится на клиенте. – fehguy

+0

Спасибо @fehguy за разъяснение. –

Смежные вопросы