PHP에서 GET 요청을 보내려면 어떻게 해야 합니까?
간단한 요구사항으로 PHP를 사용할 예정입니다.URL에서 XML 콘텐츠를 다운로드해야 합니다.이 URL에 HTTP GET 요청을 전송해야 합니다.
PHP에서는 어떻게 해야 하나요?
파일 내용만 필요한 것이 아니라면 를 사용할 수 있습니다.
$xml = file_get_contents("http://www.example.com/file.xml");
더 복잡한 것은 cURL을 사용합니다.
보다 고도의 GET/POST 요구에 대해서는, CURL 라이브러리(http://us3.php.net/curl) 를 인스톨 할 수 있습니다.
$ch = curl_init("REMOTE XML FILE URL GOES HERE"); // such as http://example.com/example.xml
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
http_get
효과가 있을 거야장점http_get
over에는 HTTP 헤더 표시, 요구 상세 액세스 및 접속 타임아웃 제어 기능이 포함됩니다.
$response = http_get("http://www.example.com/file.xml");
프록시를 사용하는 경우 php 코드로 약간의 트릭을 수행해야 한다는 것을 기억하십시오.
(PROXY WITHOUT AUTENTICATION EXAMPLE)
<?php
$aContext = array(
'http' => array(
'proxy' => 'proxy:8080',
'request_fulluri' => true,
),
);
$cxContext = stream_context_create($aContext);
$sFile = file_get_contents("http://www.google.com", False, $cxContext);
echo $sFile;
?>
Guzle은 매우 잘 알려진 라이브러리로 모든 종류의 HTTP 호출을 매우 쉽게 수행할 수 있습니다.https://github.com/guzzle/guzzle 를 참조해 주세요.인스톨composer require guzzlehttp/guzzle
실행하다composer install
아래 코드는 http get call에 충분합니다.
$client = new \GuzzleHttp\Client();
$response = $client->get('https://example.com/path/to/resource');
echo $response->getStatusCode();
echo $response->getBody();
php 셋업으로 URL에서 fopen이 허용되는지 여부에 따라서는 get 인수(http://example.com?variable=value 등)를 사용하여 URL을 열 수도 있습니다.
편집: 질문을 다시 읽습니다.변수를 전달하고 싶은지 아닌지 확실하지 않습니다.그렇지 않은 경우 http://example.com/filename.xml을 포함하는 fopen 요청을 보낼 수 있습니다.변수=값 부분은 무시해도 됩니다.
저는 fsockopen을 사용하는 것을 좋아합니다.
한편, 서버의 REST API를 사용하는 것은 PHP에서 매우 인기가 있습니다.모든 URL이 REST API의 일부이며 잘 설계된 PHP 패키지를 많이 사용한다고 가정할 수 있습니다.
사실 REST API는 사이트에서 서비스를 사용하는 방법입니다.
따라서 REST API 호출을 단순화하기 위해 개발된 PHP 패키지가 많습니다.예를 들어, 여기 매우 좋은 예가 있습니다.
https://github.com/romanpitak/PHP-REST-Client
이러한 패키지를 사용하면 리소스를 쉽게 가져올 수 있습니다.
즉, (상기하신) xml 파일을 입수하는 것은 다음과 같이 간단합니다.
$client = new Client('http://example.com');
$request = $client->newRequest('/filename.xml');
$response = $request->getResponse();
echo $response->getParsedResponse();
언급URL : https://stackoverflow.com/questions/959063/how-to-send-a-get-request-from-php
'source' 카테고리의 다른 글
'syslog-syslog'는 내부 또는 외부 명령어로 인식되지 않습니다. (0) | 2022.11.08 |
---|---|
Python 인터프리터의 전체 경로를 찾으십니까? (0) | 2022.11.08 |
jQuery를 사용하여 픽셀 단위의 패딩 또는 여백 값(픽셀 단위) (0) | 2022.10.30 |
문자열 속성 값을 기준으로 개체 배열 정렬 (0) | 2022.10.30 |
Selenium WebDriver에서 JavaScript를 사용하여 XPath로 요소를 가져오는 방법이 있습니까? (0) | 2022.10.30 |