Ich finde eine Lösung zum Generieren einer Client-API für angular 2 Typescript ohne Java-Befehl, aber mit Node-Befehl.
Beispiel für ein Knotenscript zum Generieren eines typescript angular client von swagger.yaml. Beachten Sie, dass wir http verwenden. Anforderung kann nicht das erste Zertifikat überprüfen, ob https (zum Zeitpunkt des Schreibens dieser)
Dies ist 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'}));
});
});
Gerade i variable Sprache mit Typoskript-angular2 inisialise. Nach dieser node app.js
Liste der verfügbaren Client-Sprachen besuchen nur http://generator.swagger.io/api/gen/clients
Für weitere Informationen: https://github.com/swagger-api/swagger-codegen/wiki/FAQ Abschnitt Generator Dienst
@suraj Prahlerei-js ia dynamischen JS-API-Client, nicht einen Code-Generator. –
@ Mahdi-kallel können Sie uns mehr darüber erzählen, warum Sie Code mit NPM-Modul anstelle von JAR generieren möchten? –
'npm' besteht hauptsächlich aus js-Bibliotheken und alle seine Skripte beschäftigen sich mit Javascript. Was bedeutet es also, NPM mit einer Java-Bibliothek zu generieren? –