Как вы создаете wsdl-файл node-soap?
Я читаю документацию о том, как создать серверный веб-сервис. Я понимаю все, что касается создания веб-службы, за исключением того, как создается myservice.wsdl (согласно приведенному ниже фрагменту кода). Если кто-то создал веб-сервис в соответствии с документацией мыла узла, пожалуйста, сообщите мне, как мне следует создать файл wsdl. Заранее спасибо.
var myService = {
MyService: {
MyPort: {
MyFunction: function(args) {
return {
name: args.name
};
},
// This is how to define an asynchronous function.
MyAsyncFunction: function(args, callback) {
// do some work
callback({
name: args.name
});
},
// This is how to receive incoming headers
HeadersAwareFunction: function(args, cb, headers) {
return {
name: headers.Token
};
},
// You can also inspect the original `req`
reallyDetailedFunction: function(args, cb, headers, req) {
console.log('SOAP `reallyDetailedFunction` request from ' + req.connection.remoteAddress);
return {
name: headers.Token
};
}
}
}
};
var xml = require('fs').readFileSync('myservice.wsdl', 'utf8');
//http server example
var server = http.createServer(function(request,response) {
response.end('404: Not Found: ' + request.url);
});
server.listen(8000);
soap.listen(server, '/wsdl', myService, xml);
//express server example
var app = express();
//body parser middleware are supported (optional)
app.use(bodyParser.raw({type: function(){return true;}, limit: '5mb'}));
app.listen(8001, function(){
//Note: /wsdl route will be handled by soap module
//and all other routes & middleware will continue to work
soap.listen(app, '/wsdl', myService, xml);
});
1 ответ
Решение
Ни один из SOAP-модулей Node.js (насколько мне известно) не создает для вас файл WSDL.
Что вы можете сделать, это использовать сервис для создания WSDL.
Например, http://marin.jb.free.fr/wsdl/, вы можете использовать это для создания файла WSDL для любой службы, которую вы пожелаете.