在 Windows OS 上通过 npm 安装 swagger-codegen
Install swagger-codegen via npm on Windows OS
我通过 Java 命令使用 https://github.com/swagger-api/swagger-codegen 生成了我的客户端 typescript/angular2 语言。
但我想使用 npm 命令而不是 java 命令生成我的客户端 typescript/angular2。
示例:
npm install swagger-codegen -g
swagger-codegen generate -i http://petstore.swagger.io/v2/swagger.json -l
typescript-angular2 -o c:\temp\angular2_api_client
我正在使用 windows 8.1 OS。
我没有找到用 npm 安装的 swagger-codegen 命令。
我找到了为 Angular 2 TypeScript 生成客户端 API 的解决方案,无需 java 命令但使用节点命令。
从 swagger.yaml 生成打字稿 angular 客户端的示例节点脚本。请注意,我们使用 http。如果使用 https(在撰写本文时),请求无法验证第一个证书
这是app.js
var fs = require('fs');
var path = require('path');
var jsYaml = require('js-yaml');
var request = require('request');
var unzip = require('unzip2');
var codeGenEndpoint = 'http://generator.swagger.io/api/gen/clients';
var language = 'typescript-angular2';
fs.readFile(path.resolve('swagger.yaml'), 'utf8', function (error, yaml) {
if (error) {
throw error;
}
var swaggerObj = jsYaml.load(yaml);
var postBody = {
spec: swaggerObj,
options: {
modelPropertyNaming: 'camelCase',
apiPackage: 'api.clients.settings',
modelPackage: 'api.clients.settings'
}
};
request.post({
url: codeGenEndpoint + '/' + language,
body: JSON.stringify(postBody),
headers: {
'Content-Type': 'application/json'
}
}, function(error, response, body){
if (error) {
throw error;
}
if (response.statusCode !== 200) {
throw new Error('Response code was not 200. ' + body)
}
var responseObj = JSON.parse(body);
request({
url: responseObj.link,
encoding: null
}).pipe(unzip.Extract({ path: 'src/client/js/codegen/settingsApi'}));
});
});
我刚刚将变量 language
设置为 'typescript-angular2
'。
之后node app.js
有关可用客户端语言的列表,请访问 http://generator.swagger.io/api/gen/clients
更多详情:https://github.com/swagger-api/swagger-codegen/wiki/FAQ
发电机服务部分
您在找这样的东西吗?
npm install @openapitools/openapi-generator-cli -g
我通过 Java 命令使用 https://github.com/swagger-api/swagger-codegen 生成了我的客户端 typescript/angular2 语言。
但我想使用 npm 命令而不是 java 命令生成我的客户端 typescript/angular2。
示例:
npm install swagger-codegen -g
swagger-codegen generate -i http://petstore.swagger.io/v2/swagger.json -l
typescript-angular2 -o c:\temp\angular2_api_client
我正在使用 windows 8.1 OS。 我没有找到用 npm 安装的 swagger-codegen 命令。
我找到了为 Angular 2 TypeScript 生成客户端 API 的解决方案,无需 java 命令但使用节点命令。
从 swagger.yaml 生成打字稿 angular 客户端的示例节点脚本。请注意,我们使用 http。如果使用 https(在撰写本文时),请求无法验证第一个证书
这是app.js
var fs = require('fs');
var path = require('path');
var jsYaml = require('js-yaml');
var request = require('request');
var unzip = require('unzip2');
var codeGenEndpoint = 'http://generator.swagger.io/api/gen/clients';
var language = 'typescript-angular2';
fs.readFile(path.resolve('swagger.yaml'), 'utf8', function (error, yaml) {
if (error) {
throw error;
}
var swaggerObj = jsYaml.load(yaml);
var postBody = {
spec: swaggerObj,
options: {
modelPropertyNaming: 'camelCase',
apiPackage: 'api.clients.settings',
modelPackage: 'api.clients.settings'
}
};
request.post({
url: codeGenEndpoint + '/' + language,
body: JSON.stringify(postBody),
headers: {
'Content-Type': 'application/json'
}
}, function(error, response, body){
if (error) {
throw error;
}
if (response.statusCode !== 200) {
throw new Error('Response code was not 200. ' + body)
}
var responseObj = JSON.parse(body);
request({
url: responseObj.link,
encoding: null
}).pipe(unzip.Extract({ path: 'src/client/js/codegen/settingsApi'}));
});
});
我刚刚将变量 language
设置为 'typescript-angular2
'。
之后node app.js
有关可用客户端语言的列表,请访问 http://generator.swagger.io/api/gen/clients
更多详情:https://github.com/swagger-api/swagger-codegen/wiki/FAQ 发电机服务部分
您在找这样的东西吗?
npm install @openapitools/openapi-generator-cli -g