После того, как пользователь подписывает мой веб -сайт, мне нужно отправить запрос SOAP методом, который не блокирует пользователю. Если сервер SOAP работает медленно, я не хочу, чтобы конечный пользователь должен был ждать его. Есть ли способ отправить запрос и позволить моему основному приложению PHP продолжать работать, не ожидая ответа с SOAP Server? Если нет, есть ли способ установить максимальный тайм -аут на запрос SOAP и обрабатывать функциональность, если запрос больше максимального тайм -аута? У меня есть следующее: < /p>
//ini_set('default_socket_timeout', 1);
$streamOptions = array(
'http'=>array(
'timeout'=>0.01
)
);
$streamContext = stream_context_create($streamOptions);
$wsdl = 'file://' . dirname(__FILE__) . '/Service.wsdl';
try{
if ( file_get_contents( $wsdl ) ) {
$this->_soapClient = new SoapClient($wsdl,
array(
'soap_version' => SOAP_1_2,
'trace' => true,
'stream_context' => $streamContext
)
);
$auth = array('UserName' => $this->_username, 'Password' => $this->_password);
$header = new SoapHeader(self::WEB_SERVICE_URL, "WSUser", $auth);
$this->_soapClient->__setSoapHeaders(array($header));
}//if
}
catch(Exception $e){
echo "we couldnt connect". $e;
}
$this->_soapClient->GetUser();
< /code>
Я установил тайм -аут на 0,01, чтобы попытаться подключить соединение к тайм -ауту, но запрос все еще, кажется, отключается. Что я здесь делаю?
Подробнее здесь: https://stackoverflow.com/questions/190 ... ap-request
PHP не блокирующий мыльный запрос ⇐ Php
Кемеровские программисты php общаются здесь
1753159559
Anonymous
После того, как пользователь подписывает мой веб -сайт, мне нужно отправить запрос SOAP методом, который не блокирует пользователю. Если сервер SOAP работает медленно, я не хочу, чтобы конечный пользователь должен был ждать его. Есть ли способ отправить запрос и позволить моему основному приложению PHP продолжать работать, не ожидая ответа с SOAP Server? Если нет, есть ли способ установить максимальный тайм -аут на запрос SOAP и обрабатывать функциональность, если запрос больше максимального тайм -аута? У меня есть следующее: < /p>
//ini_set('default_socket_timeout', 1);
$streamOptions = array(
'http'=>array(
'timeout'=>0.01
)
);
$streamContext = stream_context_create($streamOptions);
$wsdl = 'file://' . dirname(__FILE__) . '/Service.wsdl';
try{
if ( file_get_contents( $wsdl ) ) {
$this->_soapClient = new SoapClient($wsdl,
array(
'soap_version' => SOAP_1_2,
'trace' => true,
'stream_context' => $streamContext
)
);
$auth = array('UserName' => $this->_username, 'Password' => $this->_password);
$header = new SoapHeader(self::WEB_SERVICE_URL, "WSUser", $auth);
$this->_soapClient->__setSoapHeaders(array($header));
}//if
}
catch(Exception $e){
echo "we couldnt connect". $e;
}
$this->_soapClient->GetUser();
< /code>
Я установил тайм -аут на 0,01, чтобы попытаться подключить соединение к тайм -ауту, но запрос все еще, кажется, отключается. Что я здесь делаю?
Подробнее здесь: [url]https://stackoverflow.com/questions/19048908/php-non-blocking-soap-request[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия