2013-04-06 148 views
2

在创建RESPONSE标头时,使用header()函数可以实现这一功能。请求标题怎么样?如何在PHP中设置自定义REQUEST标头

在此先感谢!

+0

http://www.omaroid.com/php-get-and-set- custom-http-headers/ – highwingers 2013-04-06 04:15:46

+0

请求标头由客户端发送。你是否在使用'curl'设置标题? – Barmar 2013-04-06 04:22:55

+0

你想欺骗目前正在运行的应用程序?或者你想模仿它的要求? – sectus 2013-04-06 04:24:23

回答

1

如果你正在谈论发出请求,并指定你的头,要做到这一点的方法之一是使用CURL

$data = "<soap:Envelope>[...]</soap:Envelope>"; 
$tuCurl = curl_init(); 
curl_setopt($tuCurl, CURLOPT_HEADER, 0); 
curl_setopt($tuCurl, CURLOPT_URL, "http://example.com/path/for/soap/url/"); 
curl_setopt($tuCurl, CURLOPT_POST, 1); // if post request 
curl_setopt($tuCurl, CURLOPT_POSTFIELDS, $data); 
curl_setopt($tuCurl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($tuCurl, CURLOPT_HTTPHEADER, array("Content-Type: text/xml","SOAPAction: \"/soap/action/query\"", "Content-length: ".strlen($data))); 
$tuData = curl_exec($tuCurl); 
if(!curl_errno($tuCurl)){ 
    $info = curl_getinfo($tuCurl); 
    echo 'Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url']; 
} else { 
    echo 'Curl error: ' . curl_error($tuCurl); 
} 
curl_close($tuCurl); 
echo $tuData; 
相关问题