Использование Fixie / Heroku (белые списки IP-адресов) для отправки вызова Soap - PullRequest
0 голосов
/ 30 мая 2019

В настоящее время с помощью пакета strong-soap мы отправляем в сервис службу Soap.Достаточно просто.Служба, тем не менее, будет принимать запросы только от IP-адресов из белого списка, поэтому при развертывании приложения в Heroku произойдет сбой.У Heroku есть аддон Fixie, который позволяет использовать прокси-IP.

https://devcenter.heroku.com/articles/fixie#local-setup

Проблема заключается в том, чтобы связать сильный звонок с Fixie.Глядя на документацию strong-soap, с которой он появляется при создании soapClient, я могу добавить индивидуальный запрос (с пакетом запроса узла).Я пытался сделать это безуспешно, похоже, истекло время ожидания.

Кто-нибудь пытался это сделать?Было бы лучше просто отказаться от сильного мыла и выполнить вызов мыла без вспомогательного пакета?

const request = require('request')
const fixie_url = process.env.FIXIE_URL
const fixieRequest = request.defaults({'proxy': fixie_url})

var options = {request : fixieRequest}

return new Promise ((resolve, reject) => { 
    const url = 'http://SERVICE_URL/Service.asmx?WSDL'
    soap.createClient(url, options, (err, client) => {
      client.SOAPMETHOD(args, (err, result, body) => {
        const valid = result['RESPONSE']
        return resolve(valid)
      })
    })
  })

Результат, который я сейчас получаю, в основном говорит о том, что client.SOAPMETHOD не может быть прочитан, потому что он не определен... который, я думаю, вызван какой-то ошибкой или таймаутом в createClient.

...