media24si/api-resource

Laravel Guzzle Api Resource 包

v3.0.1 2024-01-15 13:17 UTC

This package is auto-updated.

Last update: 2024-09-15 15:00:51 UTC


README

Software License

一个简单的 Guzzle 包装器,提供对 API 端点的简单访问。

为了支持 Guzzle v5.0,请使用 v1.0.0

安装 - Laravel

使用以下命令通过 Composer (Packagist) 需求此包

$ composer require media24si/api-resource

config/app.php 中的 providers 数组中注册 ApiResourceServiceProvider

Media24si\ApiResource\ApiResourceServiceProvider::class,

发布供应商文件(配置文件)

$ php artisan vendor:publish

可选config/app.php 中注册 facade

'Api' => Media24si\ApiResource\Facades\ApiResource::class

安装 - Lumen

使用以下命令通过 Composer (Packagist) 需求此包

$ composer require media24si/api-resource

bootstrap/app.php(Lumen)中注册 ApiResourceServiceProvider

$app->register(Media24si\ApiResource\ApiResourceServiceProvider::class);

将配置文件从供应商 vendor/media24si/api-resource/src/config/apiresrouce.php 复制到您的本地配置文件夹 config/apiresource.php,并在您的 bootstrap/app.php 中启用此配置(Lumen)

$app->configure('apiresource');

可选bootstrap/app.php(Lumen)中注册 facade

class_alias(Media24si\ApiResource\Facades\ApiResource::class, 'Api');

同时,确保取消注释同一文件中的此行

$app->withFacades();

使用方法

您可以在没有任何配置的情况下使用此包。只需在您的控制器中(或函数/控制器中注入 Media24si\ApiResource\ApiResource)使用 \Api facade。

调用您的端点,就像您会调用一个正常的 Guzzle 请求一样

\Api::get('http://httpbin.org'); // returns a response object

配置

默认值

请求选项的关联数组,应用于客户端创建的每个请求。请参阅官方 手册

示例

'defaults' => [
	'base_uri' => 'http://httpbin.org/']
]

#### endpoints
Array of defined endpoints. Here you can define your aliases for endpoints.

Sample array:
``` php
'endpoints' => [
	'notification' => [
		'uri' => 'http://httpbin.org/notification'
	],
	'categories' => [
		'uri' => '/categories', // with base_uri set
		'options' => [
			'query' => [
				'fields' => 'id, title'
			]
		]
	]
]

定义了端点后,您可以进行简单的调用。一个示例可能是

\Api::get('notification')

默认选项可以被覆盖

\Api::get('categories', ['query' => ['fields' => 'id, title, slug']])

许可证

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