PHP CURL 응답에서 쿠키 검색
외부 API 응답은 http 헤더 내에서 쿠키로 내장 될 수 있습니다. 비누 나 휴식과 같은 기존의 통신 프로토콜을 사용하는 대신. 이 쿠키를 힘든 구문 분석에 의지하지 않고 구조화 된 배열로 추출하는 것을 촉진하려면 다음 기술을 사용할 수 있습니다.
$ch = curl_init('http://www.google.com/'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Retrieve headers too curl_setopt($ch, CURLOPT_HEADER, 1); $result = curl_exec($ch);
PHP 컬 확장을 사용하면 다음과 같은 쿠키를 포함하여 HTTP 응답을 검색 할 수 있습니다. 코드 :
// Extract cookies using regular expressions preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);
응답에서 쿠키를 추출하려면 정규 표현식을 사용할 수 있습니다 :
$cookies = array(); foreach($matches[1] as $item) { parse_str($item, $cookie); $cookies = array_merge($cookies, $cookie); }
배열에는 응답에 발견 된 모든 쿠키가 포함됩니다. 이것을보다 유용한 형식으로 변환하기 위해, 각 쿠키 문자열은 parse_str을 사용하여 배열로 구문 분석 할 수 있습니다 :
$ cookies = array ();
foreach ($ matches [1] as $ item) {
parse_str ($ item, $ 쿠키);
$ 쿠키 = array_merge ($ 쿠키, $ 쿠키);
}
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3