programing

Curl POST 요청 헤더 표시?방법이 있을까요?

goodcopy 2023. 1. 10. 21:31
반응형

Curl POST 요청 헤더 표시?방법이 있을까요?

Curl Web Automation 앱을 만들고 있는데 POST 액션에서 원하는 결과를 얻을 수 없는 문제가 있습니다.POST 요구 전체를 (헤더와 함께) 어떻게 표시해야 할지 고민하고 있습니다.검색하고 있습니다만, 이것들도 모두 응답 헤더입니다.e요청입니다.구글에서 찾은 게시물 중 어느 것도 언급되지 않은 것 같습니다.

다음과 같은 방법을 사용하여 컬 요청 결과를 표시할 수 있습니다(구문이 해제되어 있는 경우 참조할 ID와 코드가 포함된 가상 머신을 이미 종료했습니다).

 $result = curl($curl_exect) ;

어쨌든 머리글 전체를 어떻게 볼 수 있는지 조언해주시면 감사하겠습니다.

필요한 것은 다음과 같습니다.

curl_setopt($curlHandle, CURLINFO_HEADER_OUT, true); // enable tracking
... // do curl request    
$headerSent = curl_getinfo($curlHandle, CURLINFO_HEADER_OUT ); // request headers

다음의 조작을 실시하면, 전송에 관한 정보를 표시할 수 있습니다.

curl_setopt($curl_exect, CURLINFO_HEADER_OUT, true);

요청 전에, 그리고

$information = curl_getinfo($curl_exect);

요청 후

보기: http://www.php.net/manual/en/function.curl-getinfo.php

를 사용할 수도 있습니다.CURLOPT_HEADER당신의 안에서curl_setopt

curl_setopt($curl_exect, CURLOPT_HEADER, true);

$httpcode = curl_getinfo($c, CURLINFO_HTTP_CODE);

return $httpcode == 200;

이것은 헤더를 사용하는 몇 가지 방법일 뿐입니다.

다음과 같이 컬로 전송되는 모든 헤더를 파일에 저장할 수 있습니다.

$f = fopen('request.txt', 'w');
curl_setopt($ch,CURLOPT_VERBOSE,true);
curl_setopt($ch,CURLOPT_STDERR ,$f);

다음을 사용하여 사용자가 직접 헤더를 요청하도록 할 수 있습니다.

// open a socket connection on port 80
$fp = fsockopen($host, 80);

// send the request headers:
fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data);

$result = ''; 
while(!feof($fp)) {
    // receive the results of the request
    $result .= fgets($fp, 128);
}

// close the socket connection:
fclose($fp);

요청을 어떻게 해야 할지 고민하는 것처럼

최근 같은 문제가 발생하여 Wireshark(네트워크 감시도구)를 설치했습니다.암호화 트래픽(HTTPS)을 제외한 모든 것을 볼 수 있습니다.

언급URL : https://stackoverflow.com/questions/3164405/show-curl-post-request-headers-is-there-a-way-to-do-this

반응형