"enum" sadece bu gibi çalışır:
{
"in": "query",
"name": "sample",
"description": "a sample parameter with an enum value",
"type": "string",
"enum": [ "1", "2"],
"required": true
}
Gördüğünüz gibi, orada dize türünde sample
adında bir sorgu parametresi, ve iki olası değerleri belirten bir enum vardır. Bu durumda, örnek parametrenin gerekli olduğunu bildirir, böylece UI bir seçenek olarak boş bir değer göstermez. Eğer javascript (örneğin spec
için) bir değişken bildirebilirsiniz,
{
"swagger": "2.0",
"info": {
"title": "title",
"description": "descriptor",
"version": "0.1"
},
"paths": {
"/sample": {
"post": {
"description": "sample",
"parameters": [
{
"in": "query",
"name": "sample",
"description": "a sample parameter with an enum value",
"type": "string",
"enum": [
"1",
"2"
],
"required": true
}
],
"responses": {
"200": {
"description": "Successful request."
}
}
}
}
}
}
yerel olarak test etmek ve SwaggerUi nesnesine geçmek:
minimal Çalışma örnek için, bu deneyin.
var spec = { ... };
window.swaggerUi = new SwaggerUi({
url: url,
spec: spec,
dom_id: "swagger-ui-container",
supportedSubmitMethods: ['get', 'post', 'put', 'delete'],
onComplete: function(swaggerApi, swaggerUi){
...
url
parametre
bu durumda dikkate alınmayacaktır.
Sonunda, çıkış şuna benzer:
ben iyi bu şekilde yapmak başardı, ancak her onu açılan yarattı params için aşağıda ekli resme görebileceğiniz gibi:
Elde etmek istediğim, parametre için listelenen kullanılabilir enumlar ile aşağıdaki resimde olduğu gibi güzel Model/Model Şeması sekmeleridir.
Merhaba WEBRON. Önerin için teşekkürler. Bununla bir neşem yok ... Ne denediğime bakmayın, yine de söz konusu örnekte addPet için 'status' durumundaki olası tüm dizelerle o güzel çıktıyı alamıyorum. Bu demo json'a göre aynı JSON şemasını izlediğimden - http://petstore.swagger.wordnik.com/v2/swagger.json - durumu çevrimiçi demo olarak aynı sonucu elde etmek için Pet tanımını nasıl değiştirmeliyim? – eloleon
Kullanılacak UI'nin hangi sürümü kullanılıyor? Test ettiğimde iyi çalıştı. – Ron
Sürüm 2.0.47 sürümünü kullanıyorum ve bu örnekte json'u değiştirmeye çalışıyorum: https://github.com/swagger-api/swagger-ui/tree/master/dist. Bu json değiştirebilirseniz: http://petstore.swagger.wordnik.com/v2/swagger.json ve çevrimiçi bir yere fırlatırsanız bunu takdir ediyorum – eloleon