Как запустить ПОЛУЧАТЬ/POST/ПОМЕЩАТЬ/УДАЛЯТЬ запрос, и судья запрашивают тип в PHP?

Я никогда не вижу, как PUT/DELETE запрос отправлен.

Как сделать это в PHP?

Я знаю, как отправить ПОЛУЧИТЬ/POST запрос с завихрением:

$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
curl_setopt($ch, CURLOPT_COOKIEFILE,$cookieFile);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch,   CURLOPT_SSL_VERIFYPEER,   FALSE);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 4);

Но как сделать PUT/DELETE запрос?

15
задан ROMANIA_engineer 3 November 2014 в 11:18
поделиться

2 ответа

Для DELETE используйте curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
Для PUT используйте curl_setopt($ch, CURLOPT_PUT, true);

Альтернативой, которая не зависит от установки cURL, является использование file_get_contents с пользовательским контекстом HTTP-потока.

$result = file_get_contents(
    'http://example.com/submit.php', 
    false, 
    stream_context_create(array(
        'http' => array(
            'method' => 'DELETE' 
        )
    ))
);

Ознакомьтесь с этими двумя статьями о выполнении REST с PHP

47
ответ дан 1 December 2019 в 00:20
поделиться

Вообще говоря, если вы Хотите отправить какую-то «не получить» запрос, вы часто работаете с Curl .


, и вы будете использовать функцию Curl_Setopt для настройки запроса, который вы отправляете; Среди большого количества возможных вариантов, чтобы изменить метод запроса, вы будете интересны, по крайней мере, те параметры (цитируя) :

  • Curlopt_Customrequest : метод пользовательского запроса для использования вместо « Get « или « голова » при выполнении HTTP-запроса. Это полезно для выполнения " delete или других, более неясных http-запросов.
  • CURLOPT_HTTPGET : TRUE Для сброса метода HTTP-запроса на get .
  • CURLOPT_POST : TRUE , чтобы сделать регулярный http post .
  • CURLOPT_PUT : true на http Положите файл. Файл на PUT должен быть установлен Curlopt_infile и Curlopt_infilesize .


Конечно, Curl_SetOpt не единственная функция, которую вы используете; См. Страница документации CURL_EXEC на примере того, как отправить запрос с Curl.

(Да, этот пример довольно прост, и отправляет GOW запрос - но вы должны быть в состоянии построить оттуда ;-))

3
ответ дан 1 December 2019 в 00:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: