web-dev-qa-db-ja.com

Swaggerモックサーバー

SwaggerファイルにAPIリファレンスがあります。非常に単純な模擬サーバーを作成したいので、たとえば次のように呼び出します:

mymockurl.com/usersは、事前定義されたJSONを返します(データベースに接続する必要はありません)。

これを行う最も簡単な方法は何ですか?私はバックエンドではありません。

45
rafakob

SwaggerHub は、OpenAPI 2.0および3.0仕様の モックサーバー を提供します。モッキングは、無料プランと有料プランの両方でサポートされています。

モックサーバーを使用するには、仕様をSwaggerHubにインポートし、「API Auto Mocking」を有効にします。モック応答はJSON、YAML、およびXMLであり、応答スキーマと、スキーマで定義されたexampledefaultおよびenumの値に基づいて生成されます。

Disclosure:SwaggerHubを作っている会社で働いています。

18
Helen

コードなしでOpenAPI(fka。Swagger)仕様から簡単なモックを作成する簡単な方法は、ツール呼び出し prism で利用可能です http://github.com/stoplightio/prism

このコマンドラインはあなたが必要とするすべてです:

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

モックサーバーは、OpenAPI仕様に基づいて動的な応答を返します。仕様で例が提供されている場合、prismはそれらを返します。そうでない場合、仕様に基づいてダミーデータを生成します。

29
Arnaud Lauret

OpenAPI/Swagger仕様を前提として、 Swagger Codegen を使用して、異なるサーバーフレームワークでサーバースタブを生成できます(例:Java Spring。PHP Slim、Ruby on Rails5など)。

関連ドキュメントは次のとおりです。

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

更新:2018年5月、Swagger Codegenのトップ50の貢献者は、プロジェクトを分岐して OpenAPI Generator と呼ばれるコミュニティ駆動バージョンを作成することを決定しました。分岐の背景にある理由については、 Q&A を参照してください。

12
William Cheng

Imposterスクリプト可能な多目的モックサーバーです。

Docker環境でのセットアップが非常に簡単で、モックAPIで遊ぶためのSwagger UIを提供します。

設定例を見てみましょう

  1. フォルダーconfig/petstore.yamlのファイルでswagger構成を準備します

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

    here からswagger仕様の例をコピーできます。

  2. config/openapi-plugin-petstore-config.jsonImposterの構成ファイルを作成します

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

    構成ファイルの名前は、-config.jsonで終わる必要があります。

  3. 実行ImosterwithDocker

    シェルがconfigの親ディレクトリに配置されていることを確認し、実行します

    docker run -ti -p 8443:8443 \
    -v $(pwd)/config:/opt/imposter/config \
    outofcoffee/imposter-openapi
    
  4. http:// localhost:8443/_spec / を開いて、Mock ServerとSwagger UIを操作します

    Imposter Mock API

8
u2ix

Swagger yamlからのモックAPIサーバーの docker container を次に示します。

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

これは内部的に swagger-mock-api を使用しています

3
arulraj.net

ドッカーは、Swagger Editor、Swagger UI、およびSwaggerモックAPIサーバーを構成して、それらをより簡単に処理できるようにしました。見てみな。これには、サンプルのswagger仕様が含まれているため、エディター、UI、およびモックAPIサーバーは、最初から構成を行わなくても実行されます。必要なことは、swagger仕様を編集し、swagger.jsonとswagger.yamlを保存し、dockerを再起動することだけです。

swagger-all-in-one-docker-compose

1
Chikara Matsuda

openapi-mock は、 swagger-node-runner および sway のCLIラッパーで、特にopenapi/swagger仕様ファイルからモックサーバーを起動します。

0
Alasdair McLeay

MockLabは、インポートされたSwagger定義からのモックAPIの自動生成をサポートするようになりました。また、Swaggerhubで受信したWebhookとして設定して、保存/公開ごとに更新されるようにすることもできます。

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

0
Tom