我目前正在使用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,没有什么可以阻止你这样做。