PHP Post | HTTP错误411.请求必须分块或具有内容长度

时间:2015-03-28 06:21:47

标签: php http iis post header

我从 linux服务器发布到IIS服务器。 使用以下代码 -

public function PostToPage($target, $data) {

    $opts = array('http' =>
        array(
            'method'  => 'POST',
            'header'  => ["'Authorization: Basic ' . base64_encode('MYPOOLIN:znfbPLR261E=')",
                        "Content-type: application/x-www-form-urlencoded",
                        "Transfer-Encoding: chunked",
                        "Content-Encoding: chunked"
                            ],
            'content' => $data,
            'ignore_errors' => 1
        )
    );

    $context  = stream_context_create($opts);
    $response = file_get_contents($target, false, $context);


    return $response;
}

当我尝试通过POSTman发布数据时,它完全正常。但是,使用上述功能时,会出现错误 - HTTP错误411.请求必须分块或具有内容长度。

当我在标题中添加'Content-Length:1024'时(通过POSTman示例检查内容长度后),POST会持续很长时间,例如2-3分钟(可能超出时间给出500响应代码的错误)

有什么想法吗?

0 个答案:

没有答案