2011-10-03 69 views

回答

28

通过CURLOPT_HTTPHEADER传入“Accept:”(即冒号右侧没有内容的标题)。像:

$headers = array("Accept:"); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 

使用curl命令行工具相对应的是:

curl -H 'Accept:' http://example.com/ 

这会使卷发删除头,而不仅仅是发送一个标头为空值。你可以也发送一个空白值的头,如果你想,但你需要使用分号而不是冒号!

+0

我所有[一个相关的问题]绊倒(http://stackoverflow.com/questions/12130910/how-to-interpret-empty-http- accept-header),并且希望指出'-H'Accept:''实际上确实阻止了curl完全发送头部信息。它不会像我第一次想到的那样将头部发送为空。 – aaaaaa

0

确保您的阵列项目设置与结肠立即头名之后,像这样:

array("Accept: yourAcceptValue") 

不带空格,如:

array("Accept : yourAcceptValue") 

如果有空间在标题名称和冒号之间,curl会将默认的*/*添加到您的标题中。

(工程在PHP 5.5.9-1ubuntu4.7)