根据documentation的环回,lb soap
创建基于基础soap的数据源模型。有编程的方式可以做到这一点吗?我想以编程方式进行此操作,以通过动态创建的模型和数据源促进动态肥皂消耗。
答案 0 :(得分:1)
免责声明:我是LoopBack的合著者和维护者。
以下是实现命令lb soap
的源代码:
以下是生成模型定义和方法源代码的代码:
exports.generateAPICode = function generateAPICode(selectedDS, operationNames) { // eslint-disable-line max-len
var apis = [];
var apiData = {
'datasource': selectedDS,
'wsdl': selectedWsdl,
'wsdlUrl': selectedWsdlUrl,
'service': selectedService.$name,
'binding': selectedBinding.$name,
'operations': getSelectedOperations(selectedBinding, operationNames),
};
var code = soapGenerator.generateRemoteMethods(apiData);
var models = soapGenerator.generateModels(apiData.wsdl, apiData.operations);
var api = {
code: code,
models: models,
};
apis.push(api);
return apis;
};
如您所见,大部分工作都委托给soapGenerator
,后者引用loopback-soap-LoopBack团队维护的一个较低级别的模块。在您的应用程序中,您可以直接使用loopback-soap
(无需依赖我们的CLI工具)并调用其API来生成与SOAP相关的模型。
很遗憾,loopback-soap
的文档很少,因为到目前为止它主要是一个内部模块。您将必须阅读源代码以更好地理解。如果您这样做,那么我们很乐意接受为将来的用户改进文档的文稿。