SwaggerファイルにAPIリファレンスがあります。非常に単純な模擬サーバーを作成したいので、たとえば次のように呼び出します:
mymockurl.com/users
は、事前定義されたJSONを返します(データベースに接続する必要はありません)。
これを行う最も簡単な方法は何ですか?私はバックエンドではありません。
SwaggerHub は、OpenAPI 2.0および3.0仕様の モックサーバー を提供します。モッキングは、無料プランと有料プランの両方でサポートされています。
モックサーバーを使用するには、仕様をSwaggerHubにインポートし、「API Auto Mocking」を有効にします。モック応答はJSON、YAML、およびXMLであり、応答スキーマと、スキーマで定義されたexample
、default
およびenum
の値に基づいて生成されます。
Disclosure:SwaggerHubを作っている会社で働いています。
コードなしでOpenAPI(fka。Swagger)仕様から簡単なモックを作成する簡単な方法は、ツール呼び出し prism で利用可能です http://github.com/stoplightio/prism
このコマンドラインはあなたが必要とするすべてです:
./prism run --mock --list --spec <your swagger spec file>
モックサーバーは、OpenAPI仕様に基づいて動的な応答を返します。仕様で例が提供されている場合、prismはそれらを返します。そうでない場合、仕様に基づいてダミーデータを生成します。
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 を参照してください。
Docker環境でのセットアップが非常に簡単で、モックAPIで遊ぶためのSwagger UIを提供します。
フォルダーconfig/petstore.yaml
のファイルでswagger構成を準備します
swagger: "2.0"
info:
version: 1.0.0
title: Swagger Petstore
.
.
.
here からswagger仕様の例をコピーできます。
config/openapi-plugin-petstore-config.json
のImposterの構成ファイルを作成します
{
"plugin": "com.gatehill.imposter.plugin.openapi.OpenApiPluginImpl",
"specFile": "petstore.yaml"
}
構成ファイルの名前は、-config.json
で終わる必要があります。
実行ImosterwithDocker
シェルがconfig
の親ディレクトリに配置されていることを確認し、実行します
docker run -ti -p 8443:8443 \
-v $(pwd)/config:/opt/imposter/config \
outofcoffee/imposter-openapi
http:// localhost:8443/_spec / を開いて、Mock ServerとSwagger UIを操作します
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 を使用しています
ドッカーは、Swagger Editor、Swagger UI、およびSwaggerモックAPIサーバーを構成して、それらをより簡単に処理できるようにしました。見てみな。これには、サンプルのswagger仕様が含まれているため、エディター、UI、およびモックAPIサーバーは、最初から構成を行わなくても実行されます。必要なことは、swagger仕様を編集し、swagger.jsonとswagger.yamlを保存し、dockerを再起動することだけです。
openapi-mock は、 swagger-node-runner および sway のCLIラッパーで、特にopenapi/swagger仕様ファイルからモックサーバーを起動します。
MockLabは、インポートされたSwagger定義からのモックAPIの自動生成をサポートするようになりました。また、Swaggerhubで受信したWebhookとして設定して、保存/公開ごとに更新されるようにすることもできます。
https://www.mocklab.io/blog/mocklab-now-supports-swagger-and-swaggerhub/