Сделайте HTTPS-запрос через PHP и получите ответ

Я хочу сделать HTTPS-запрос через PHP к серверу и получить ответ.

что-то похожее на этот код рубина

  http = Net::HTTP.new("www.example.com", 443)

  http.use_ssl = true

  path = "uri"

  resp, data = http.get(path, nil)

Спасибо

Ответы на вопрос(4)

Zend Framework имеет хороший компонент под названиемZend_Http_Client который идеально подходит для такого рода транзакций.

Под капотом он используетлокон делать запросы, но вы обнаружите, что Zend_Http_Client имеет гораздо более приятный интерфейс для работы и его легче настраивать, когда вы хотите добавить пользовательские заголовки или работать с ответами.

Если все, что вы хотите сделать, это извлечь содержимое страницы с минимальными затратами, вы можете сделать следующее, в зависимости от конфигурации вашего сервера:

$data = file_get_contents('https://www.example.com/');
 Pacerier22 нояб. 2017 г., 19:03
404 ...........................
 David Snabel-Caunt22 нояб. 2017 г., 23:43
Обновил ссылку

ета:

<?php
//set up variables
$theData = '<?xml version="1.0"?>
<note>
    <to>my brother</to>
    <from>me</from>
    <heading>hello</heading>
    <body>this is my body</body>
</note>';
$url = 'http://www.example.com';
$credentials = '[email protected]:password';
$header_array = array('Expect' => '',
                'From' => 'User A');
$ssl_array = array('version' => SSL_VERSION_SSLv3);
$options = array(headers => $header_array,
                httpauth => $credentials,
                httpauthtype => HTTP_AUTH_BASIC,
            protocol => HTTP_VERSION_1_1,
            ssl => $ssl_array);

//create the httprequest object               
$httpRequest_OBJ = new httpRequest($url, HTTP_METH_POST, $options);
//add the content type
$httpRequest_OBJ->setContentType = 'Content-Type: text/xml';
//add the raw post data
$httpRequest_OBJ->setRawPostData ($theData);
//send the http request
$result = $httpRequest_OBJ->send();
//print out the result
echo "<pre>"; print_r($result); echo "</pre>";
?>
Решение Вопроса

это может сработать, попробуйте.

 $ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
// Set so curl_exec returns the result instead of outputting it.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Get the response and close the channel.
$response = curl_exec($ch);
curl_close($ch);

для получения дополнительной информации, проверьтеhttp://unitstep.net/blog/2009/05/05/using-curl-in-php-to-access-https-ssltls-protected-sites/

 rsc08 окт. 2014 г., 09:35
Ссылка была идеальной! Вы можете обновить свой ответ, чтобы иметь как минимум curl_setopt ($ ch, CURLOPT_SSL_VERIFYPEER, false); линия
 wael3421806 окт. 2010 г., 16:05
спасибо ссылка многое объяснила

ПОЛУЧИТЕ пример:

<?php
$r = new HttpRequest('http://example.com/feed.rss', HttpRequest::METH_GET);
$r->setOptions(array('lastmodified' => filemtime('local.rss')));
$r->addQueryData(array('category' => 3));
try {
    $r->send();
    if ($r->getResponseCode() == 200) {
        file_put_contents('local.rss', $r->getResponseBody());
    }
} catch (HttpException $ex) {
    echo $ex;
}
?>

Пример публикации

<?php
$r = new HttpRequest('http://example.com/form.php', HttpRequest::METH_POST);
$r->setOptions(array('cookies' => array('lang' => 'de')));
$r->addPostFields(array('user' => 'mike', 'pass' => 's3c|r3t'));
$r->addPostFile('image', 'profile.jpg', 'image/jpeg');
try {
    echo $r->send()->getBody();
} catch (HttpException $ex) {
    echo $ex;
}
?>
 jimasun10 янв. 2017 г., 16:01
ОП попросилHTTPS
 starbeamrainbowlabs11 мая 2019 г., 13:55
Warning: Uncaught Error: Class 'HttpRequest' not found

Ваш ответ на вопрос