#php #web-services #soap
#php #веб-сервисы #soap
Вопрос:
Обычно использование SOAP через порт 80 просто:
$client = new SoapClient('http://domain.com/webservice?wsdl');
Как бы вы использовали веб-сервис через другой tcp-порт? (Не 80 или 443)
Комментарии:
1. вы пробовали
http://domain.com:808/webservice?wsdl
?
Ответ №1:
Попробуйте :
http://domain.com:808/webservice?wsdl
=>
$client = new SoapClient('http://domain.com:808/webservice?wsdl');
Термин :808
указывает номер порта URI, если вы его опустите, он будет использовать номер порта по умолчанию для указанного протокола. (80: для HTTP)
В общем случае URI, который использует общий синтаксис для полномочий с пустым путем, должен быть нормализован до пути «/». Аналогично, явный «:port», для которого порт пуст или используется по умолчанию для
схемы, эквивалентен тому, где порт и его разделитель «:» пропущены и, следовательно, должны быть удалены путем нормализации на основе схемы. Например, второй URI выше является обычной формой для схемы «http»
.
Хороший обзор URI находится здесь.
Комментарии:
1. Спасибо. Я попробовал это, и это не удалось, но это потому, что поставщик случайно закрыл 808, не сказав мне. В любом случае спасибо. Это правильный ответ для всех, у кого есть такой же вопрос.
2. Обратите внимание, что PHP не позволит вам указывать порт при использовании HTTPS.