PHP cURL 사용자 정의 헤더
PHPPHP cURL 사용자 정의 헤더
PHP에서 cURL HTTP 요청에 사용자 정의 헤더를 추가 할 수 있는지 궁금합니다. 나는 아이튠즈가 삽화를 붙잡고 그것을 어떻게 비표준 헤더를 사용하는지 에뮬레이션하려고한다.
X-Apple-Tz: 0
X-Apple-Store-Front: 143444,12
요청에이 헤더를 어떻게 추가 할 수 있습니까?
해결법
-
==============================
1.
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'X-Apple-Tz: 0', 'X-Apple-Store-Front: 143444,12' ));
http://www.php.net/manual/en/function.curl-setopt.php
-
==============================
2.다음 구문을 사용하십시오.
다음 구문을 사용하십시오.
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL,"http://www.example.com/process.php"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,$vars); //Post Fields curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $headers = [ 'X-Apple-Tz: 0', 'X-Apple-Store-Front: 143444,12', 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding: gzip, deflate', 'Accept-Language: en-US,en;q=0.5', 'Cache-Control: no-cache', 'Content-Type: application/x-www-form-urlencoded; charset=utf-8', 'Host: www.example.com', 'Referer: http://www.example.com/index.php', //Your referrer address 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:28.0) Gecko/20100101 Firefox/28.0', 'X-MicrosoftAjax: Delta=true' ]; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $server_output = curl_exec ($ch); curl_close ($ch); print $server_output ;
-
==============================
3.다음은 하나의 기본 기능입니다.
다음은 하나의 기본 기능입니다.
/** * * @param string $url * @param string|array $post_fields * @param array $headers * @return type */ function cUrlGetData($url, $post_fields = null, $headers = null) { $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); if ($post_fields && !empty($post_fields)) { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); } if ($headers && !empty($headers)) { curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $data = curl_exec($ch); if (curl_errno($ch)) { echo 'Error:' . curl_error($ch); } curl_close($ch); return $data; }
사용 예 :
$url = "http://www.myurl.com"; $post_fields = 'postvars=val1&postvars2=val2'; $headers = ['Content-Type' => 'application/x-www-form-urlencoded', 'charset' => 'utf-8']; $dat = cUrlGetData($url, $post_fields, $headers);
from https://stackoverflow.com/questions/8115683/php-curl-custom-headers by cc-by-sa and MIT license
'PHP' 카테고리의 다른 글
PHP의 배열이 값 또는 참조로 전달됩니까? (0) | 2018.09.19 |
---|---|
PHP : $ _SESSION 안에 '객체'저장하기 (0) | 2018.09.19 |
컬에 JSON을 PHP로 게시하는 방법 (0) | 2018.09.19 |
PHP의 인터페이스 포인트는 무엇입니까? (0) | 2018.09.19 |
PHP는 - 개행 문자를 만드는 방법? (0) | 2018.09.19 |