2

メタデータ/Swagger に基づいて ServiceStack javascript (typescript なし) クライアントを自動生成する方法はありますか? それをどうにかしてwebpackと統合するのは良いことです。

これを swagger-js-codegen で実行できるかどうかはわかりません (このパッケージは、swagger 仕様ファイルから nodejs または angularjs クラスを生成します)。

実際、swagger プラグインは完全なスキーマを取得するために swagger.json にアクセスするためのサービスを共有していません (スキーマは分割されています)。javascriptにswagger codegenを使用する回避策はありますか?

http://localhost:12116/resourcesにアクセスすると取得できます

{"swaggerVersion":"1.2","apis":[{"path":"/resource/assignroles"},{"path":"/resource/auth"},{"path":"/resource/authenticate"},{"path":"/resource/criteria"},{"path":"/resource/import"},{"path":"/resource/tenders"},{"path":"/resource/unassignroles"}],"apiVersion":"1.0","basePath":"http://localhost:12116","info":{"title":"App"}}

http://localhost:12116/resource/importを使用

{"swaggerVersion":"1.2","apiVersion":"1.0","basePath":"http://localhost:12116","resourcePath":"/import","apis":[{"path":"/import/stats","operations":[{"method":"GET","nickname":"BrowseImportStats","parameters":[],"errorResponses":[]}]},{"path":"/import/tenders/changes/apply","operations":[{"method":"GET","nickname":"ApplyChanges","parameters":[],"errorResponses":[]},{"method":"POST","nickname":"ApplyChanges","parameters":[{"paramType":"body","name":"body","required":false,"allowMultiple":false,"type":"ApplyChanges"}],"errorResponses":[]},{"method":"PUT","nickname":"ApplyChanges","parameters":[{"paramType":"body","name":"body","required":false,"allowMultiple":false,"type":"ApplyChanges"}],"errorResponses":[]},{"method":"DELETE","nickname":"ApplyChanges","parameters":[],"errorResponses":[]}]},{"path":"/import/tenders/sync","description":"summary","operations":[{"method":"GET","summary":"summary","nickname":"ImportTenders","parameters":[],"errorResponses":[]}]}],"models":{"ImportTenders":{"id":"ImportTenders","properties":{}},"ApplyChanges":{"id":"ApplyChanges","properties":{}},"BrowseImportStats":{"id":"BrowseImportStats","description":"BrowseImportStats","properties":{}}}}

update 2016-11-26 ドキュメントを生成できました

C:\git\testapp>java -jar swagger-codegen-cli-2.2.1.jar generate -i http
://localhost:12116/resources -l javascript -o ./node_modules/testapp_api --additi
onal-properties emitJSDoc=false,usePromises=true
4

1 に答える 1

1

OpenAPI/Swagger 仕様があれば、Swagger Codegen を活用して、JS API クライアントだけでなく、他の言語 (C#、Ruby、PHP、Python など)、サーバー スタブ (Spring、NodeJS など) の API クライアントを生成できます。および API ドキュメント。

これが良い出発点です: https://github.com/swagger-api/swagger-codegen#getting-started

(何もインストールしたくない場合は、オンラインでコードを生成することもできます: https://github.com/swagger-api/swagger-codegen#online-generators )

于 2016-11-21T04:51:00.047 に答える