mbvienasbaitas/strapi-laravel-client

Strapi Client 的 Laravel 封装。

1.1.0 2024-05-10 10:46 UTC

This package is auto-updated.

Last update: 2024-09-10 11:30:03 UTC


README

Latest Version on Packagist Test Status Total Downloads

Laravel 包,用于通过 mbvienasbaitas/strapi-php-client 包提供的工具简化 Strapi 客户端管理。

安装

要开始使用,只需使用 Composer 引入项目。
您还需要安装提供 psr/http-client-implementationpsr/http-factory-implementation 的包,这是 mbvienasbaitas/strapi-php-client 所必需的。

composer require mbvienasbaitas/strapi-laravel-client

使用方法

默认客户端配置

默认客户端可以通过环境变量进行配置。以下是可用配置选项的列表。

使用外观的默认客户端

use VienasBaitas\Strapi\Client\Contracts\Requests\Collection\IndexRequest;
use VienasBaitas\Strapi\Client\Laravel\Facades\Strapi;

$collection = Strapi::collection('pages');

$response = $collection->index(IndexRequest::make());

使用注入的默认客户端

use VienasBaitas\Strapi\Client\Client;
use VienasBaitas\Strapi\Client\Contracts\Requests\Collection\IndexRequest;

class BlogController
{
    public function index(Client $client)
    {
        $collection = $client->collection('pages');

        return $collection->index(IndexRequest::make());
    }
}

使用外观的自定义客户端

use VienasBaitas\Strapi\Client\Contracts\Requests\Collection\IndexRequest;
use VienasBaitas\Strapi\Client\Laravel\Facades\Strapi;

$client = Strapi::client('custom');

$collection = $client->collection('pages');

$response = $collection->index(IndexRequest::make());

使用注入的自定义客户端

use VienasBaitas\Strapi\Client\Contracts\Requests\Collection\IndexRequest;
use VienasBaitas\Strapi\Client\Laravel\Contracts\Factory;

class BlogController
{
    public function index(Factory $factory)
    {
        $collection = $factory->client('custom')->collection('pages');

        return $collection->index(IndexRequest::make());
    }
}

使用自定义客户端和请求工厂接口

自定义客户端和请求工厂的解析实现可以使用内置解析器功能进行绑定。将以下代码片段放置在您的 ApplicationServiceProvider 中。

use VienasBaitas\Strapi\Client\Laravel\Strapi;

Strapi::resolveRequestFactoryUsing(function () {
    // return \Psr\Http\Client\ClientInterface implementation
});

Strapi::resolveRequestFactoryUsing(function () {
    // return \Psr\Http\Message\RequestFactoryInterface implementation
});

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

鸣谢

替代方案

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件