web-dev-qa-db-fra.com

Serveur fictif Swagger

J'ai une référence d'API dans le fichier Swagger. Je veux créer un serveur simulé très simple, de sorte que lorsque j'appelle, par exemple:

mymockurl.com/users il retournera un json prédéfini (inutile de se connecter à une base de données).

Quelle est la façon la plus simple de faire cela? Je ne suis pas un gars d'arrière-plan.

45
rafakob

SwaggerHub fournit un serveur fictif pour les spécifications OpenAPI 2.0 et 3.0. Mocking est pris en charge sur les plans gratuits et payants.

Pour utiliser le serveur fictif, importez vos spécifications dans SwaggerHub et activez "API Auto Mocking". Les réponses factices peuvent être JSON, YAML et XML. Elles sont générées en fonction de vos schémas de réponse et des valeurs example, default et enum définies dans les schémas.

Disclosure: Je travaille pour l'entreprise qui fabrique SwaggerHub.

18
Helen

Un moyen facile de créer une maquette simple à partir d’une spécification OpenAPI (fka. Swagger) sans code consiste à utiliser un outil prisme disponible à l’adresse http://github.com/stoplightio/prism

Cette ligne de commande est tout ce dont vous avez besoin:

./prism run --mock --list --spec <your swagger spec file>

Le serveur fictif renvoie une réponse dynamique basée sur la spécification OpenAPI. Si des exemples sont fournis dans la spécification, Prism les renverra, sinon, des données factices basées sur la spécification seront générées.

29
Arnaud Lauret

Compte tenu de la spécification OpenAPI/Swagger, vous pouvez utiliser Swagger Codegen pour générer un stub de serveur dans différents environnements de serveur (par exemple Java Spring. PHP = Slim, Ruby sur Rails5, etc.).

Voici la documentation connexe:

https://github.com/swagger-api/swagger-codegen/wiki/Server-stub-generator-HOWTO

MISE À JOUR: En mai 2018, environ 50 des plus grands contributeurs de Swagger Codegen ont décidé de créer le projet pour créer une version pilotée par la communauté appelée OpenAPI Generator . Veuillez vous référer à Q & A pour connaître les raisons derrière la fourche.

12
William Cheng

Imposter est un serveur fictif multiusage et scriptable .

Très facile à installer dans un environnement Docker et fournit un interface utilisateur Swagger pour jouer avec votre faux simulateur.

Voyons un exemple de configuration

  1. Avoir une configuration swagger prête dans un fichier du dossier config/petstore.yaml

    swagger: "2.0"
    info:
    version: 1.0.0
    title: Swagger Petstore
        .
        .
        .
    

    Vous pouvez copier l'exemple de spécification swagger de here .

  2. Créez un fichier de configuration pour Imposter dans config/openapi-plugin-petstore-config.json

    {
      "plugin": "com.gatehill.imposter.plugin.openapi.OpenApiPluginImpl",
      "specFile": "petstore.yaml"
    }
    

    Le nom du fichier de configuration doit se terminer par -config.json.

  3. Run Imposter avec Docker

    Assurez-vous que votre shell est placé dans le répertoire parent de config et exécutez-le.

    docker run -ti -p 8443:8443 \
    -v $(pwd)/config:/opt/imposter/config \
    outofcoffee/imposter-openapi
    
  4. Ouvrez http: // localhost: 8443/_spec / pour jouer avec votre serveur Mock et votre interface utilisateur Swagger.

    Imposter Mock API

8
u2ix

Voici le conteneur de menu fixe pour le serveur api simulé de swagger yaml.

docker run -i \
    -p 8000:8000 \
    -v /path/to/file.yaml:/data/swagger.yaml \
    -t palo/swagger-api-mock:latest

Ceci utilise en interne swagger-mock-api

3
arulraj.net

Je docker a composé Swagger Editor, Swagger UI et le serveur api simulé Swagger pour les gérer plus facilement. Vérifiez-le. Il contient un exemple de spécification swagger afin que l'éditeur, l'interface utilisateur et le serveur d'API simulé s'exécutent sans configuration depuis le début. Tout ce que vous avez à faire est d’éditer les spécifications swagger, d’enregistrer swagger.json et swagger.yaml, puis de redémarrer le menu fixe.

swagger-tout-en-un-docker-composer

1
Chikara Matsuda

openapi-mock est un wrapper CLI pour swagger-node-runner et sway spécifiquement pour démarrer un serveur fictif à partir d'un fichier spec openapi/swagger.

0
Alasdair McLeay

MockLab prend désormais en charge la génération automatique d’API factices à partir d’une définition Swagger importée. Et vous pouvez également le configurer comme un Webhook reçu dans Swaggerhub afin qu'il soit mis à jour à chaque sauvegarde/publication:

https://www.mocklab.io/blog/mocklab-now-supports-swagger-and-swaggerhub/

0
Tom