2016-09-08 13 views
7

Bu guide'u takiben swagger kullanmaya başladım, ama benim için hiçbir anlam ifade etmeyen çok garip bir şey buldum.v2/api-docs, springfox ve Swagger2 kullanılırken neden varsayılan URL'dir?

Hatırladığım kadarıyla, API'nızın 2 numaralı sürümüne sahip olduğunuz dokümanlar için v2/api-docs kullanılmalıdır.

Yani, varsayılan yalnızca api-docs olmalıdır, ancak bazı garip nedenlerden dolayı varsayılanın v2/api-doc olduğunu buldum.

Kitaplık belgesini kontrol etme this bulundu.

Bu değeri daha sonra v2 kullanamadan nasıl geçersiz kılarım? (API'im v2'ye ulaştığında, aynı zamanda eski dokümanları da göstermek istiyorum).

Veya belki v2 kullanma kavramım yanlış mı? Birisi bana yardım edebilir mi?

+0

URL'de 'v2' sizin API'leri sürümüne ifade etmez sayı, bu Swagger belirtim sürümü numarasıdır. SpringFox'un şu anki sürümü Swagger 2.0'ı varsayılan olarak kullanır, gördüğünüz şey budur. – woemler

+0

, tahmin ettiğim şey bu! ama ai'mın belgelerini nasıl göstereceğime dair bir fikrin var mı? – jpganz18

cevap

16

/v2/api-docs URL, SpringFox'un belgeler için kullandığı varsayılan değerdir. v2, API'nizin belge sürümüne (Docket yapılandırmasında değiştirilebilir) değil, kullanılan Swagger belirtiminin sürümüne başvurmaz. Swagger dokümantasyon URL'sini özelleştirmek için documentation here'a bir göz atın.

springfox.documentation.swagger.v2.path=/my/docs 

Bu belirttiğiniz ne olursa olsun hiç /v2/api-docs den SpringFox Swagger belgeleri için varsayılan URL'yi değişecek: Kısacası, adresinden dokümantasyon görünecektir URL'sini değiştirmek için bir ortam özelliğini değiştirmek gerekir. Bunu uygulamak için, yeni veya mevcut özellikler dosyaya yukarıdaki özelliğini ekleyin ve ardından Springfox yapılandırma sınıfında bir özellik kaynağı olarak ekleyin:

@PropertySource("classpath:swagger.properties") 
@Configuration 
public class SwaggerConfig {...} 
+0

Teşekkürler. Yani, bu sadece havalı belgeler için son nokta mı? API dokümanlarım için değil mi? Aai'nin belgelerini nasıl ayarlayabilirim o zaman? – jpganz18

+0

Swagger, API bitiş noktalarını açıklamak için bir belirtimdir. “/ V2/api-docs” de gördüğünüz şey, API'nızın Swagger 2.0 standardındaki belgelendirmesidir (Swagger 1.0, RAML, RestDocs, vs.'nin aksine). Swagger spec hakkında daha fazla bilgiyi kendi web sitesinde bulabilirsiniz: [http://swagger.io/](http://swagger.io/) – woemler

+0

API'mın belgelerinin v2/api-doc'larda bulunmadığı herhangi bir fikir ? (Bu URL zaten alınmış olduğundan) swagger2 üretecek veya bana bir URL verecek? – jpganz18

İlgili konular