vinkla / vimeo
Requires
- php: ^7.2|^8.0
- graham-campbell/manager: ^5.0
- illuminate/contracts: ^5.8|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/support: ^5.8|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- vimeo/vimeo-api: ^3.0
Requires (Dev)
- graham-campbell/analyzer: ^2.0|^3.1|^4.1
- graham-campbell/testbench: ^5.2|^6.1
- laravel/framework: ^5.8|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- laravel/lumen-framework: ^5.7
- mockery/mockery: ^1.0
- phpunit/phpunit: ^7.0|^9.5.10|^10.5|^11.0
- psalm/plugin-laravel: ^1.4.0|^1.1|^2.7
- vimeo/psalm: ^3.17|^4.19|^5.6
README
为 Laravel 提供的 Vimeo 桥接器。
// Fetching data. $vimeo->request('/users/dashron', ['per_page' => 2], 'GET'); // Upload videos. $vimeo->upload('/home/aaron/foo.mp4'); // Want to use a facade? Vimeo::uploadImage('/videos/123/images', '/home/aaron/bar.png', true);
安装
在项目的根目录中,使用 Composer 安装此软件包。
$ composer require vimeo/laravel
将服务提供者添加到 config/app.php
中的 providers
数组中,或者如果您正在使用 Laravel 5.5,可以通过自动软件包发现来完成此操作。
Vimeo\Laravel\VimeoServiceProvider::class
如果您想使用 facade,请将引用添加到 config/app.php
中的别名数组中。
'Vimeo' => Vimeo\Laravel\Facades\Vimeo::class
配置
Laravel Vimeo 需要连接配置。要开始,您需要发布所有供应商资产
$ php artisan vendor:publish --provider="Vimeo\Laravel\VimeoServiceProvider"
这将创建一个 config/vimeo.php
文件,您可以在其中修改以设置配置。此外,请确保检查该软件包中原始配置文件在版本之间的更改。
您可以根据需要更改配置文件,但默认预期值如下
VIMEO_CLIENT= VIMEO_SECRET= VIMEO_ACCESS=
以及设置备用连接...
VIMEO_ALT_CLIENT= VIMEO_ALT_SECRET= VIMEO_ALT_ACCESS=
默认连接名称
此选项 default
是您指定以下哪个连接用作所有工作的默认连接的地方。当然,您可以使用管理器类同时使用多个连接。此设置的默认值为 main
。
Vimeo 连接
此选项 connections
是为您的应用程序设置每个连接的地方。已包含示例配置,但您可以添加任何数量的连接。
用法
VimeoManager
这是最有兴趣的类。它绑定到 ioc 容器中的 vimeo
,并且可以使用 Facades\Vimeo
facade 访问。该类通过扩展 AbstractManager 实现 ManagerInterface。该接口和抽象类都是 Graham Campbell 的 Laravel Manager 软件包的一部分,因此您可能想要查看该存储库中的文档,了解如何使用管理器类。请注意,返回的连接类始终是 Vimeo\Vimeo
的实例。
Facades\Vimeo
此 facade 会将静态方法调用动态传递到 ioc 容器中的 vimeo
对象,默认情况下是 VimeoManager
类。
VimeoServiceProvider
此类不包含有价值的公共方法。应将此类添加到 config/app.php
中的 providers 数组中。此类将设置 ioc 绑定。
示例
在这里,您可以看到使用此软件包是多么简单。开箱即用,默认适配器为 main
。在配置文件中输入您的身份验证详细信息后,它就会正常工作
// You can alias this in config/app.php. use Vimeo\Laravel\Facades\Vimeo; Vimeo::request('/me/videos', ['per_page' => 10], 'GET'); // We're done here - how easy was that, it just works! Vimeo::upload('/bar.mp4'); // This example is simple and there are far more methods available.
Vimeo 管理器将表现得像 Vimeo\Vimeo
。如果您想调用特定的连接,可以使用连接方法
use Vimeo\Laravel\Facades\Vimeo; // Writing this… Vimeo::connection('main')->upload('/bar.mp4'); // …is identical to writing this Vimeo::upload('/bar.mp4'); // and is also identical to writing this. Vimeo::connection()->upload('/bar.mp4'); // This is because the main connection is configured to be the default. Vimeo::getDefaultConnection(); // This will return main. // We can change the default connection. Vimeo::setDefaultConnection('alternative'); // The default is now alternative.
如果您像我一样更喜欢使用依赖注入而不是 facade,则可以注入管理器
use Vimeo\Laravel\VimeoManager; class Foo { protected $vimeo; public function __construct(VimeoManager $vimeo) { $this->vimeo = $vimeo; } public function bar() { $this->vimeo->upload('/foo.mp4'); } } App::make('Foo')->bar();
文档
本包中还有其他未在此文档中说明的类。这是因为该包是官方Vimeo包的Laravel包装器。