Я тестирую Twilio для использования в качестве нашего решения для SMS, но у меня возникают проблемы с его работой за нашим прокси-сервером.Подключение к Twilio SMS через прокси в PHP
Я пробовал:
$twiliohttp = new Services_Twilio_TinyHttp(
"https://api.twilio.com",
array("curlopts" => array(
CURLOPT_USERAGENT => self::USER_AGENT,
CURLOPT_HTTPHEADER => array('Accept-Charset: utf-8'),
CURLOPT_CAINFO => dirname(__FILE__) . '/cacert.pem',
CURLOPT_PROXY => '3.X.X.X:9400',
))
);
$client = new Services_Twilio($account_sid, $auth_token, null, $twiliohttp);
$message = $client->account->messages->sendMessage(
'+441432XXXX31', // From a Twilio number in your account
'+44776XXXX712', // Text any number
"Hello monkey!"
);
Я тогда получаю ошибку: Фатальная ошибка: Не удается получить доступ к себя :: когда ни один класс не сфера активен в /var/www/twiliosms.php на линии 16
Так я изменил файл Twilio.php изменяющее массив curlopts добавить:
CURLOPT_PROXY => '3.X.X.X:9400',
и вызова Twilio с:
$client = new Services_Twilio($account_sid, $auth_token);
$message = $client->account->messages->sendMessage(
'+4414XXXXXXX1', // From a Twilio number in your account
'+4477XXXXXXX2', // Text any number
"Hello monkey!"
);
Но тогда я получаю ошибку:
Fatal error: Uncaught exception 'Services_Twilio_RestException' with message 'Could not decode response body as JSON. This likely indicates a 500 server error' in /var/www/GE/includes/SMS/Twilio.php:288
Stack trace:
#0 /var/www/GE/includes/SMS/Twilio.php(181): Base_Services_Twilio->_processResponse(Array)
#1 /var/www/GE/includes/SMS/Twilio/ListResource.php(92): Base_Services_Twilio->createData('/2010-04-01/Acc...', Array)
#2 /var/www/GE/includes/SMS/Twilio/Rest/Messages.php(24): Services_Twilio_ListResource->_create(Array)
#3 /var/www/GE/includes/SMS/Twilio/Rest/Messages.php(71): Services_Twilio_Rest_Messages->create(Array)
#4 /var/www/GE/twiliosms.php(35): Services_Twilio_Rest_Messages->sendMessage('+441432233131', '+447766205712', 'Hello monkey!')
#5 {main}
thrown in /var/www/GE/includes/SMS/Twilio.php on line 288
Любые идеи, как сделать эту работу решения через прокси-сервер, который не допускает входящие соединения?
Заранее спасибо.
теперь я получаю: Фатальная ошибка: неперехваченное исключение «Services_Twilio_RestException» с сообщением «Невозможно декодировать тело ответа как JSON. Вероятно, это указывает на ошибку сервера 500 в /var/www/GE/includes/SMS/Twilio.php:288 – trevrobwhite
В Twilio.php в строке 288, пытающейся сбросить полученный вами ответ. Глядя на этот ответ, можно получить более полное представление о том, почему мы не можем разобрать запрос как json: private function _processResponse ($ response) { var_dump ($ response); – rickyrobinett
Это возвращает ошибку 404, однако я могу закрутиться к этому прокси без проблем, есть ли шанс, что вы можете поддержать сессию поддержки? Наш прокси будет разрешать только https, если это проблема. строка (581) «HTTP/1.1 404 NOT FOUND Access-Control-Allow-Credentials: true Access-Control-Allow-Headers: Accept, Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS Access-Control-Allow-Origin: * – trevrobwhite