Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Zend запрос через не стабильный прокси 
:(
    Опции темы
taral
Дата 26.3.2014, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 17.1.2008

Репутация: нет
Всего: нет



Пробую настроить запросы на сервер через прокси. Использую библиотеку Zend_Http_Client.
Вот простой пример запроса
Выделить всёкод PHP
1:
2:
3:
4:
5:
6:
7:
8:
        $config array(
            'adapter'    ='Zend_Http_Client_Adapter_Proxy',
            'proxy_host' ='***.***.***.***',
            'proxy_port' =3180,
        );
        $client new Zend_Http_Client('http://google.com'$config);
        $response=$client->request();
        echo $response->getBody();

Прокси сервер примерно в 30% случаев обрывает соединение. Выкидывает ексепшн Zend_Http_Client_Adapter_Exception "Unable to Connect to ...host..."
Я решил пока эту проблему таким образом
Выделить всёкод PHP
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
class ...
     public function ...
        $config array(
            'adapter'    ='Zend_Http_Client_Adapter_Proxy',
            'proxy_host' ='***.***.***.***',
            'proxy_port' =3180,
        );
        $client new Zend_Http_Client('http://google.com'$config);
        $response=$this->tryConnect($client);
        echo $response->getBody();
    ...
    public function tryConnect(Zend_Http_Client $client$i=1) {
        try {
            return $client->request();
        } catch(Zend_Http_Client_Adapter_Exception $exception) {
            if($i>7) {
                throw new CException($exception->getMessage());
            } else {
                return $this->tryConnect($client, ++$i);
            }
        }
    }
...

Грубо говоря делаю 7 попыток выполнить запрос. Это в принципе то что мне нужно. Но мне не нравится каким образом я достиг этого решения. Я думаю что должно быть что то более изящное. Спасибо.

Это сообщение отредактировал(а) taral - 26.3.2014, 18:29
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Extensions | Следующая тема »


 




[ Время генерации скрипта: 0.0763 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.