📅  最后修改于: 2023-12-03 15:17:12.734000             🧑  作者: Mango
在 Laravel 中,我们可以使用 GuzzleHttp
实现 HTTP 请求,其中也包括对文本数据的请求。
首先要安装 GuzzleHttp
,可以使用 Composer 进行安装:
composer require guzzlehttp/guzzle
发送 GET 请求只需使用 get
方法即可,如下所示:
use GuzzleHttp\Client;
$client = new Client();
$response = $client->get('http://example.com/api/users');
$text = $response->getBody()->getContents();
其中,http://example.com/api/users
为请求的地址。请求成功后,我们可以通过 $response->getBody()->getContents()
获取到响应的纯文本内容。
发送 POST 请求需要指定请求的内容,使用 post
方法即可,如下所示:
use GuzzleHttp\Client;
$client = new Client();
$response = $client->post('http://example.com/api/users', [
'form_params' => [
'username' => 'john',
'password' => 'password123'
]
]);
$text = $response->getBody()->getContents();
其中,form_params
指定了请求的内容。请求成功后,我们同样可以通过 $response->getBody()->getContents()
获取到响应的纯文本内容。
除了 GET 和 POST 请求外,GuzzleHttp
还支持 PUT、PATCH、DELETE 等请求方式,使用方法与 POST 请求类似,只需将 post
方法替换为相应的方法即可,如:
// PUT 请求
$response = $client->put('http://example.com/api/users/1', [
'form_params' => [
'username' => 'john'
]
]);
// PATCH 请求
$response = $client->patch('http://example.com/api/users/1', [
'form_params' => [
'password' => 'newpassword123'
]
]);
// DELETE 请求
$response = $client->delete('http://example.com/api/users/1');
在 Laravel 中,使用 GuzzleHttp
实现 HTTP 请求非常方便,我们可以通过 get
方法发送 GET 请求,通过 post
方法发送 POST 请求,支持 PUT、PATCH、DELETE 等其他请求方式。获取响应内容只需通过 $response->getBody()->getContents()
即可。