视频网站 / laravel
Laravel 的 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
如果您想使用 外观。将引用添加到 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
外观访问。此类通过扩展 AbstractManager 实现 ManagerInterface。接口和抽象类都是 Graham Campbell 的 Laravel Manager 包的一部分,因此您可能想查看该存储库中的文档,了解如何使用管理类。请注意,返回的连接类始终是 Vimeo\Vimeo
的实例。
Facades\Vimeo
此外观将动态地将静态方法调用传递到 ioc 容器中的 vimeo
对象,默认情况下是 VimeoManager
类。
VimeoServiceProvider
此类不包含任何有意义的公共方法。此类应添加到 config/app.php
中的提供者数组。此类将设置 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.
如果您像我一样喜欢使用依赖注入而不是外观,则可以注入管理器
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();
文档
此包中还有其他未在此处记录的类。这是因为在 Packagist 上的包是 官方 Vimeo 包 的 Laravel 封装。