NodeJS: вызовы SOAP API без создания мыльных клиентов перед каждым вызовом метода SOAP - PullRequest
0 голосов
/ 10 октября 2018

Я использую strong-soap для вызова SOAP API из приложения NodeJ.Я могу вызывать методы мыла, используя следующий код:

createClient() {
   return new Promise((resolve, reject) => {
       soap.createClient(WYH_URL, this.options, (err: Error, mClient: any) => {
           if (err) {
               reject(err)
           } else {
               this.client = mClient;
               resolve(mClient)
           }
       });
   })
}

bookService = (data) => {
    var requestArgs = { SJson: JSON.stringify(data) }
    return this.createClient().then(success => {
        var method = this.client['BookService'];
        return method(requestArgs)
    })
}

Поскольку это приложение nodeJS предназначено для веб-крюка с диалоговым потоком, ответы API мыла должны быть более быстрыми, но приведенный выше подход создает клиент SOAP каждый раз, когда вызывается метод мыла,который занимает больше времени, чем ожидалось.Есть ли какой-нибудь подход, который может быть полезен здесь, который может устранить создание мыльных клиентов для каждого вызова метода?

1 Ответ

0 голосов
/ 26 июня 2019

Создайте клиента верхнего уровня и повторно используйте его для каждого запроса.

...