Laravel中使用Guzzle可便捷发起HTTP请求,需先通过composer require guzzlehttp/guzzle安装包,再创建GuzzleHttp\Client实例发送GET、POST、PUT、DELETE等请求。发送GET请求获取数据时调用get方法,POST请求提交表单数据使用form_params选项,发送JSON数据则使用json选项,还可通过headers、timeout、auth等参数设置请求头、超时时间和认证信息,结合Laravel的依赖注入和服务容器能更高效地管理HTTP客户端。

Laravel 中使用 Guzzle 发起 HTTP 请求非常方便,Guzzle 是一个功能强大的 PHP HTTP 客户端,Laravel 自带了对它的支持。你只需安装 Guzzle 包,就可以轻松地发送 GET、POST、PUT、DELETE 等各种类型的请求。
在 Laravel 项目根目录下运行以下命令安装 Guzzle:
安装完成后,你就可以在控制器、服务类或路由中使用 Guzzle 发送请求。
使用 GuzzleHttp\Client 创建一个客户端实例,然后调用相应方法发起请求。
GET 请求示例:
$client = new \GuzzleHttp\Client();
$response = $client->get('https://api.example.com/users');
// 获取响应内容
$body = $response->getBody();
$data = json_decode($body, true);
POST 请求示例:
$client = new \GuzzleHttp\Client();
$response = $client->post('https://api.example.com/users', [
    'form_params' => [
        'name'  => 'John Doe',
        'email' => 'john@example.com'
    ]
]);
$body = $response->getBody();
$result = json_decode($body, true);
如果是发送 JSON 数据,使用 json 参数:
$client->post('https://api.example.com/users', [
    'json' => [
        'name'  => 'Jane Doe',
        'email' => 'jane@example.com'
    ]
]);
除了 GET 和 POST,你也可以使用其他 HTTP 方法:
例如删除用户:
$response = $client->delete('https://api.example.com/users/123');
你可以通过 options 数组设置请求头、超时、认证等参数。
$client = new \GuzzleHttp\Client();
$response = $client->get('https://api.example.com/profile', [
    'headers' => [
        'Authorization' => 'Bearer your-token',
        'Accept'        => 'application/json',
    ],
    'timeout' => 5,
]);
如果需要携带 Cookie 或基础认证:
基本上就这些。Laravel 集成 Guzzle 很简单,只要掌握基本的客户端创建和请求发送方式,就能满足大多数接口调用需求。以上就是laravel如何使用Guzzle发起HTTP请求_Laravel Guzzle HTTP请求使用方法的详细内容,更多请关注php中文网其它相关文章!
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号