Я давно искал решение для своей проблемы. Но я просто не могу найти никаких решений, и я не уверен, что именно искать.
Я объясню свою проблему здесь. В настоящее время у меня есть этот PHP-скрипт, который отлично работает и отправляет успешный запрос и получает ответ.
<?php
$url = 'http://example.nl/index.php';
$data = array('url' => 'http://www.myip.nl/', 'verkort' => 'Verkort URL');
// use key 'http' even if you send the request to https://...
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data),
),
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);
?>
Но мне действительно нужна помощь при отправке запроса со следующим содержимым:
Смотрите скриншот: http://i.imgur.com/VgedJes.png
Мне нужно добавить 3 заголовка, и я не уверен, как указать поле/значение пустым, как вы можете видеть на скриншоте. Я просто не могу понять, как это сделать.
Я был бы очень признателен, если бы кто-то помог мне с этим!
Добавить заголовок:
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\nX-Requested-With: XmlHttpRequest",
'method' => 'POST',
'content' => http_build_query($data),
),
);
Имейте в виду, что X-Requested-Header может быть интерпретирован только вашим PHP-приложением
Чтобы отправить параметр с пустым значением, вы можете сделать следующее.
$data = array('url' => 'http://www.myip.nl/', 'verkort' => 'Verkort URL', 'notMandatoryParam' => '');
Также в вашем PHP-коде вы должны выполнить проверку: if(empty($_POST['notMandatoryParam'])) {/*SKIP ME*/}