Я пытаюсь использовать оболочку cakephp для использования httpsocket с помощью ssl.Cakephp httpsocket ssl не работает с консольными оболочками
Мой «Strawman» оболочка:
App::uses('HttpSocket', 'Network/Http');
class UpdaterShell extends AppShell {
public function main() {
// STRAWMAN
$httpSocket = new HttpSocket();
$results = $httpSocket->post(
'https://accounts.google.com/o/oauth2/token',
'foo=bar'
);
debug($results);
}
}
Теперь я не ожидаю успешного ответа от Google, так как в этом простом тесте я не предоставил необходимые Params.
Но что я получаю: [email protected] unable to find the socket transport "ssl" - did you forget to enable it when you configured php?
я не сделал, OpenSSL включен, и чтобы доказать это, это работает:
App::uses('AppController', 'Controller');
App::uses('HttpSocket', 'Network/Http');
class StrawmanController extends AppController {
public function index() {
// STRAWMAN
$httpSocket = new HttpSocket();
$results = $httpSocket->post(
'https://accounts.google.com/o/oauth2/token',
'foo=bar'
);
debug($results);
}
}
(и делами, я имею в виду ответ с «invalid_request».)
Подводя итог: openssl работает, когда я использую его через контроллер или модель, но не через консоль.
Кто-нибудь знает, почему и как я могу заставить его работать?
Спасибо! A
PS: как хорошо работают с нормальной жопой HTTP: // –