您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關PHP的HTTP客戶端中Guzzle的使用方法,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
首先來一段官方文檔對Guzzle的介紹:
然后cd到網站根目錄,執行Composer命令下載Guzzle:(Linux環境)
composer require guzzlehttp/guzzle
下載完成后會生成一個vender文件夾:
在vender同級目錄新建了一個guzzle.php來寫例子。
【GET請求】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(); //構造url $url = 'https://www.baidu.com'; //get請求 $res = $client->request('GET', $url); //返回狀態碼 echo $res->getStatusCode(); //連貫操作 //$res = $client->request('GET', $url)->getBody()->getContents(); ?>
【POST請求】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(); //構造url $url = 'https://www.baidu.com'; //post請求 $res = $client->request('POST', $url, [ 'form_params' => [ 'name'=>'lws', 'sex'=>'nan' ] ]); //返回狀態碼 echo $res->getStatusCode();?>
【POST文件上傳】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(); //構造url $url = 'https://www.baidu.com'; //post請求 $res = $client->request('POST', $url, [ 'multipart' => [ [ 'name'=>'name', 'contents'=>'lws' ], [ 'name'=>'sex', 'contents'=>'nan' ], [ 'name'=>'tupian', 'contents'=>file_get_contents('1.jpg'), 'filename'=>'lws.jpg' ] ] ]); //返回狀態碼 echo $res->getStatusCode();?>
【設置代理IP】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(); //構造url $url = 'https://www.baidu.com'; //設置代理請求 $res = $client->request('GET', $url, [ 'proxy' => '111.22.33.44:6666' ]); //返回狀態碼 echo $res->getStatusCode();?>
【模擬請求頭】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(['headers'=>['referer'=>'https://www.baidu,com']]); //構造url $url = 'https://www.baidu.com'; //設置代理請求 $res = $client->request('GET', $url); //返回狀態碼 echo $res->getStatusCode();?>
【記錄Cookie】
<?php require './vendor/autoload.php'; //實例化客戶端 $client = new GuzzleHttp\Client(['cookie'=>true]); //構造url $url = 'https://www.baidu.com'; //設置代理請求 $res = $client->request('GET', $url); //返回狀態碼 echo $res->getStatusCode();?>
以上就是PHP的HTTP客戶端中Guzzle的使用方法,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。