Ne peut pas lire à partir du fichier de problème à Swagger de l'INTERFACE utilisateur
J'ai incorporé swagger de l'INTERFACE utilisateur de mon application.
Quand je l'ai essayer et de voir l'arrogance de l'INTERFACE utilisateur, - je obtenir de la documentation de l'API très bien, mais après un certain temps, il montre des erreurs icône (bouton).
Le message d'Erreur est comme ci-dessous:
[{"niveau":"error","message":"impossible de lire à partir du fichier
http://MYIP/swagger/docs/v1"}]
Je ne suis pas sûr de ce qui est à l'origine. Si j'actualise ça fonctionne et d'erreur s'affiche après quelques secondes.
Vous devez vous connecter pour publier un commentaire.
Je devine "http://MYIP/swagger/docs/v1" n'est pas accessible au public.
Par défaut swagger interface utilisateur utilise en ligne validateur: en ligne.swagger.io. Si elle ne peut pas accéder à votre swagger url, alors vous verrez que le message d'erreur.
Solutions possibles:
Désactiver la validation:
config.EnableSwagger().EnableSwaggerUi(c => c.DisableValidator());
Rendre votre site accessible au public
Hôte le validateur localement:
Vous pouvez obtenir le programme de validation à partir de: https://github.com/swagger-api/validator-badge#running-locally
Vous aurez également besoin de dire swaggerui l'emplacement du validateur
config.EnableSwagger().EnableSwaggerUi(c => c.SetValidatorUrl(<validator_url>));
public void Configuration(IAppBuilder app) { ... HttpConfiguration config = new HttpConfiguration(); SwaggerConfig.Register(config); }
Puis le validateur peut être configuré dans SwaggerConfig.csPour compléter la accepté de répondre...j'ai juste retiré une ligne dans la SwaggerConfig.cs. J'ai voulu seulement se débarrasser de l'erreur rouge sur les principaux swagger page en désactivant le validateur.
Si vous utilisez des fichiers à partir de
swagger-ui
dépôt github, vous pouvez désactiver la validation de votreindex.html
fichier en paramètrevalidatorUrl
ànull
en elle:Si vous utilisez PHP Laravel cadre avec L5-Swagger juste décommentez
partir du fichier de configuration
/config/l5-swagger.php
Réglage
this.model.validatorUrl = null;
dansdist/swagger-ui.js
a fonctionné pour moi ..À anynoe avoir de problème similaire lors de l'utilisation de Swashbuckle.OData:
J'ai eu des problèmes à l'intégration de Swagger avec notre OData points de terminaison (à l'aide de ODataController pour l'API et Swashbuckle.OData package NuGet). J'ai eu à écrire notre propre document de filtre et d'ajouter:
Apparemment dans le but d'éviter des erreurs de validation, j'ai eu de commentaire de la ligne qui est la création d' ODataSwaggerProvider le long avec la désactivation du programme de validation tel que mentionné dans les messages ci-dessus. Cela rend l'utilité de Swashbuckle.OData discutable mais je n'ai pas tester tout ce que cela fonctionne avec de la vanille Swashbuckle.
Remarque: j'ai utilisé la méthode décrite sur la page GitHub de Swashbuckle.OData mais ça ne fonctionnait pas: montrant pas possible à tous les points de terminaison. Peut-être que quelqu'un connaît la meilleure solution.