php 정의 header 파라미터 와 수신

정의
ajax 방식:
$.ajax({  
  •                     type: "GET",  

  •                     url: "default.aspx",  
  •                     beforeSend: function(request) {  

  •                         request.setRequestHeader("Test", "Chenxizhang");  
  •                     },  

  •                     success: function(result) {  
  •                         alert(result);  

  •                     }  
  •                 }) 

  • curl 방식:
    $url = 'http://www.example.com';
    $header = array('token:JxRaZezavm3HXM3d9pWnYiqqQC1SJbsU','language:zh','region:GZ');
    $content = array(
            'name' => 'fdipzone'
    );
    
    $response = tocurl($url, $header, $content);
    $data = json_decode($response, true);
    
    echo 'POST data:';
    echo '
    '
    ;
    print_r($data['post']);
    echo '';
    echo 'Header data:';
    echo '
    '
    ;
    print_r($data['header']);
    echo '';
    /**
    * 데이터 전송
    * @ param String $url 요청 주소
    * @ param Array $header 사용자 정의 header 데이터
    * @ param Array $content POST 데이터
    * @return String
    */
    function tocurl($url, $header, $content){
    $ch = curl_init();
    if(substr($url,0,5)=='https'){
    curl setopt ($ch, CURLOPT SSL VERIFYPEER, false); / / 인증서 검사 건 너 뛰 기
    curl setopt ($ch, CURLOPT SSL VERIFYHOST, true); / / 인증서 에서 SSL 암호 화 알고리즘 이 존재 하 는 지 확인
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($content));
    $response = curl_exec($ch);
    if($error=curl_error($ch)){
    die($error);
    }
    curl_close($ch);
    return $response;
    }
    받다
      접수 하 다.  ajax
        $_SERVER['HTTP_TEST'];
      수신 curl
    
    $post_data = $_POST;
    $header = get_all_headers();
    
    $ret = array();
    $ret['post'] = $post_data;
    $ret['header'] = $header;
    
    header('content-type:application/json;charset=utf8');
    echo json_encode($ret, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);
    
    /**
     *       header  
     */
    function get_all_headers(){
    
        //      header  
        $ignore = array('host','accept','content-length','content-type');
    
        $headers = array();
    
        foreach($_SERVER as $key=>$value){
            if(substr($key, 0, 5)==='HTTP_'){
                $key = substr($key, 5);
                $key = str_replace('_', ' ', $key);
                $key = str_replace(' ', '-', $key);
                $key = strtolower($key);
    
                if(!in_array($key, $ignore)){
                    $headers[$key] = $value;
                }
            }
        }
    
        return $headers;
    
    }
    ?>

    좋은 웹페이지 즐겨찾기