Я использую https://github.com/vpulim/node-soap soap клиента и сервера для node.js
Я создал свой собственный SOAP сервер. Клиент может выполнять методы на сервере SOAP, и сервер отправляет клиенту ответ, который соответствует ожидаемому клиенту.
Фрагмент кода:
const myService = {
SubsystemProductionService: {
SubsystemProductionServicePort: {
...
}}};
const wsdlxml = fs.readFileSync('./my.wsdl', 'utf8'),
server = http.createServer(function (request, response) {
response.end("404: Not Found: " + request.url);
});
// example call: PORT=9999 node app.js
const PORT = process.env.PORT || 3000;
server.listen(PORT);
console.log('server running on port ' + PORT);
soap.listen(server, '/myService', myService, wsdlxml);
Но перед клиентом выполнить метод на сервере SOAP, чтобы клиент отправил HTTP-запрос GET и ожидал ответа, например:
код состояния HTTP 200 + индекс. html
Проблема в том, что мой SOAP ответ службы:
Код состояния HTTP 200 + пустое тело .
Каждый запрос HTTP GET к / myService будет обрабатываться soap модуль и кажется, что HTTP Status Code 200 + пустое тело является регистром по умолчанию.
Как изменить поведение службы soap для возврата:
HTTP-код состояния 200 + индекс. html
вместо
HTTP-код состояния 200 + пустое тело
в ответ на запрос HTTP GET?
С наилучшими пожеланиями