1. 程式人生 > >php 發送post請求且header中帶參數bug調試

php 發送post請求且header中帶參數bug調試

nec out exe 發送 app 格式 transfer 數組 result

  通常get方式header中帶參數如下通過curl調用即可:

    function send_get_curl_header($url, $data){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $data);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

  註意$data格式為數組[‘AppToken: ‘.$token],而post發送時要註意postData要進行http_build_query才能成功代碼如下:

function send_post_curl_header($url, $header_data , $post_data){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header_data);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_data));
    $sResult = curl_exec($ch);
    if($sError=curl_error($ch)){
        die($sError);
    }
    curl_close($ch);
    return $sResult;
}

  大家註意,此處花費了我一定的時間去調試。

php 發送post請求且header中帶參數bug調試