PHP Post Request内容包含原始数据

时间:2014-11-06 11:17:07

标签: php request field send

我一直在为我的问题寻找解决方案这么长时间。 但我无法找到任何解决方案,而且我不确定究竟要搜索什么。

我在这里解释我的问题。 目前我有这个完美的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个标题,我不知道如何告诉字段/值是空的,如截图所示。 我无法弄清楚如何做到这一点。

如果有人能帮助我,我真的很感激!

1 个答案:

答案 0 :(得分:0)


添加标题:

$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*/}