lucasromanojf / laravel5-soundcloud
Laravel 5 的 Soundcloud API 服务提供者
dev-master
2023-01-17 16:28 UTC
Requires
- illuminate/support: 5.1.*|5.2.*|5.3.*|5.4.*|5.5.*|5.6.*|5.7.*|5.8.*|^6.0|^7.0|^8.0|^9.0
- njasm/soundcloud: ~2.0
This package is auto-updated.
Last update: 2024-09-17 20:09:47 UTC
README
Laravel 5 - Soundcloud Api 服务提供者
Laravel 5 的 Soundcloud API 服务提供者
安装
您可以通过在项目的 composer.json 中要求 "njasm/laravel5-soundcloud": "dev-master" 包来使用 Composer 安装此包。
{
"require": {
"njasm/laravel5-soundcloud": "dev-master"
},
"minimum-stability": "dev"
}
接下来,您需要将服务提供者添加到 config/app.php。
'providers' => [ // ... Njasm\Laravel\Soundcloud\SoundcloudProvider::class, ],
此外,如果您想使用 Facade,可以在 config/app.php 中为其注册别名。
'aliases' => [ // ... 'Soundcloud' => Njasm\Laravel\Soundcloud\Facades\Soundcloud::class, ],
我们还有一个专门的配置文件,可以通过运行以下命令来发布
php artisan vendor:publish --provider="Njasm\Laravel\Soundcloud\SoundcloudProvider"
SoundCloud 凭据
由于您可能不希望将 client_id、client_secret、username 或 password 放在您的仓库中(出于安全考虑),请将它们放在 .env 文件中
SOUNDCLOUD_CLIENT_ID=your_client_id SOUNDCLOUD_CLIENT_SECRET=your_client_secret SOUNDCLOUD_CALLBACK_URL=your_callback_url SOUNDCLOUD_USERNAME=your_username SOUNDCLOUD_PASSWORD=your_password SOUNDCLOUD_AUTO_CONNECT=false
并在 config/services.php 中这样引用它们
// ... 'soundcloud' => [ 'client_id' => env('SOUNDCLOUD_CLIENT_ID'), 'client_secret' => env('SOUNDCLOUD_CLIENT_SECRET'), 'callback_url' => env('SOUNDCLOUD_CALLBACK_URL'), ],
配置
除了 services.php 中的那些(现在包含您所有的 SoundCloud 凭据)之外,在专门的配置文件中还有一些额外的选项
username和password,都用于以实际用户身份连接到 SoundCloud API。这些应该在.env文件中定义。auto_connect:当设置为 true 时,上述用户凭据将用于自动连接到 SoundCloud,而无需您手动调用userCredentials方法。这可能会快速访问认证用户的资料很有用。请注意,由于此选项可能取决于应用程序环境(例如,在运行单元测试时),它也应该在.env文件中定义。
使用
您可以通过多种方式访问 Soundcloud 对象
使用依赖注入
在这种情况下,我们将利用 Laravel 的 IoC 容器来自动解析绑定
namespace App\Http\Controllers; use Njasm\Soundcloud\SoundcloudFacade; class HomeController extends Controller { public function index(SoundcloudFacade $soundcloud) { echo $soundcloud->getAuthUrl(); } }
使用 facade
namespace App\Http\Controllers; use Soundcloud; class HomeController extends Controller { public function index() { echo Soundcloud::getAuthUrl(); } }
手动解析容器中的绑定
您可以使用 SoundcloudFacade 的完整命名空间来在 IoC 中引用绑定
$soundcloud = $this->app->make(\Njasm\Soundcloud\SoundcloudFacade::class); $soundcloud = App::make(\Njasm\Soundcloud\SoundcloudFacade::class); $soundcloud = app(\Njasm\Soundcloud\SoundcloudFacade::class);
或使用简写别名
$soundcloud = $this->app->make('Soundcloud'); $soundcloud = App::make('Soundcloud'); $soundcloud = app('Soundcloud');