0

我试图弄清楚为什么粘贴自定义标头会导致来自服务器的 400 BAD REQUEST。

    $headers = array(
                    'API KEY: asdf',
                    );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0" );
    curl_setopt($ch, CURLOPT_URL, 'http://url');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1 );
    curl_setopt($ch, CURLOPT_POSTFIELDS, 'stuff');
    curl_setopt($ch, CURLOPT_COOKIEFILE, './tmp/cookie.txt');
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

    curl_setopt($ch, CURLOPT_PROXYPORT, '0000');
    curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
    curl_setopt($ch, CURLOPT_PROXY, '0.0.0.0');

    $result = curl_exec($ch);
    curl_close($ch);

我认为使用 CURLOPT_HTTPHEADER 会为请求添加一个自定义标头,但我现在想知道它是否只是覆盖了我设置的所有其他内容?

4

1 回答 1

0

服务器给出 400 响应的原因不仅仅是一个标头值。如果没有有关端点的更多信息,很难说出导致 400 响应的原因。除了示例中 headers 数组中的额外“,”之外,代码看起来还不错。卷曲选项

于 2014-10-21T04:43:05.893 回答