如何在简单的PHP中使用Guzzle HTTP客户端



我目前正在使用PHP CURL,但不知何故,在我的情况下,它不适用于basicAUTH。我想在简单的PHP项目中使用guzzel HTTP客户端(而不是Laravel项目(。我在互联网上找到的每一个解决方案都是在laravel中设置并通过composer安装。

$client = new GuzzleHttpClient();
$response = $client->post($service_url, [
'auth' => [
$username, 
$admin_password
]
]);

或者,如果guzzel不使用简单的PHP,建议其他可以使用简单PHP进行基本Auth的客户端。感谢

首先,您需要导航到您将要工作的主forder,它像往常一样位于htdocs中,然后使用composer工具来插入所有GuzzleHttpClient

(推荐:2+版本(

composer require guzzlehttp/guzzle

它将下载并安装依赖项,如:

  • 符号/折旧合同
  • psr/http消息
  • psr/http客户端
  • guzzlehttp://promise
  • raloupie/getallheaders等

完全安装后;尝试一个简单的例子,看看它是否真的有效

<?php
// First of all require autoload from vendor dir;
require_once "vendor/autoload.php";
use GuzzleHttpClient;

$client = new Client([
// Base URI is used with relative requests
'base_uri' => 'https://reqres.in',
]);

// The response to get
$res = $client->request('GET', '/api/users', [
'query' => ['page' => '2', ]
]);

$body = $res->getBody();
$array_body = json_decode($body);
print_r($array_body);
?>

在浏览器中检查结果

Composer与Laravel或Guzzle无关,"只是"一个包管理器
即使您没有使用框架,您也可以在项目中使用composer,我建议您这样做。

也就是说,一旦你有了Guzzle源代码(通过composer或直接下载代码;我不会推荐后者(,你就可以在任何地方使用它。

顺便说一句,我建议使用composer有两个(主要(原因:

  • 您可以控制依赖项(如Guzzle(,以便轻松更新/降级它们。此外,composer将跟踪与其他依赖项可能发生的冲突(例如,在某些情况下无法协同工作(
  • Composer有自己的psr-4自动加载器

所以,是的,你也可以在没有框架和作曲家的情况下使用Guzzle,没有什么可以阻止你这样做。

最新更新