namelivia / laravel-fitbit

此包已被废弃且不再维护。没有建议的替代包。

Fitbit Web API 库,适用于 Laravel

0.0.7 2021-08-08 10:01 UTC

This package is auto-updated.

Last update: 2024-02-22 09:54:30 UTC


README

安装

使用 Composer 在项目的根目录中要求此包。

$ composer require namelivia/laravel-fitbit

将服务提供者添加到 config/app.php 中的 providers 数组。如果你使用 Laravel 5.5 或更高版本,则无需这样做。

Namelivia\Fitbit\Laravel\FitbitServiceProvider::class

如果你想要使用 facade,可以在 config/app.php 中将引用添加到你的别名数组。

'Fitbit' => Namelivia\Fitbit\Laravel\Facades\Fitbit::class

配置

Laravel Fitbit 需要连接配置。要开始,你需要发布所有供应商资产

$ php artisan vendor:publish --provider="Namelivia\Fitbit\Laravel\FitbitServiceProvider"

这将在你的应用程序中创建一个 config/fitbit.php 文件,你可以修改它来设置你的配置。同时,确保检查此包中原始配置文件在版本之间的变化。

默认连接名称

此选项 default 是你可以指定以下哪个连接作为所有工作的默认连接的地方。当然,你可以同时使用多个连接,使用管理器类。此设置的默认值为 main

Fitbit 连接

此选项 connections 是为你的应用程序设置每个连接的地方。已包括示例配置,但你可以添加你想要的任意数量的连接。

用法

FitbitManager

这是最感兴趣的类。它绑定到 ioc 容器中的 fitbit,可以使用 Facades\Fitbit facade 来访问。此类通过扩展 AbstractManager 实现 ManagerInterface。接口和抽象类都是 Graham Campbell 的 Laravel Manager 包的一部分,所以你可能想查看该存储库中的文档,了解如何使用管理器类。注意,返回的连接类始终是 Api 的实例。

Facades\Fitbit

此 facade 会动态地将静态方法调用传递到 ioc 容器中的 fitbit 对象,默认情况下是 FitbitManager 类。

FitbitServiceProvider

此类没有感兴趣的公共方法。应将此类添加到 config/app.php 中的 providers 数组。此类将设置 ioc 绑定。

示例

在这里您可以看到这个包是如何简单易用的示例。开箱即用,默认适配器是 main。在配置文件中输入您的认证详情后,它就会自动运行

// You can alias this in config/app.php.
use Namelivia\Fitbit\Laravel\Facades\Fitbit;

Fitbit::activities()->activity()->getLifetimeStats();
// We're done here - how easy was that, it just works!

Fitbit 管理器会表现得像是一个 Fitbit。如果您想要调用特定的连接,可以使用连接方法来实现

use Namelivia\Fitbit\Laravel\Facades\Fitbit;

// Writing this…
Fitbit::connection('main')->activities()->activity()->getLifetimeStats();

// …is identical to writing this
Fitbit::activities()->activity()->getLifetimeStats();

// and is also identical to writing this.
Fitbit::connection()->activities()->activity()->getLifetimeStats();

// This is because the main connection is configured to be the default.
Fitbit::getDefaultConnection(); // This will return main.

// We can change the default connection.
Fitbit::setDefaultConnection('alternative'); // The default is now alternative.

如果您像我一样喜欢使用依赖注入而不是外观(facade),那么您可以注入管理器

use Namelivia\Fitbit\Laravel\FitbitManager;

class Foo
{
    protected $fitbit;

    public function __construct(FitbitManager $fitbit)
    {
        $this->fitbit = $fitbit;
    }

    public function bar()
    {
        $this->fitbit->activities()->activity()->getLifetimeStats();
    }
}

App::make('Foo')->bar();

文档

这个包是 fitbit-http-php 的 Laravel 封装。

许可证

MIT

本地开发

该项目附带一个 docker-compose.yml 文件,因此如果您使用 Docker 和 docker-compose,您可以在不安装任何本地环境中的应用程序的情况下进行开发。首次运行时,只需执行 docker-compose up --build 来设置容器并启动测试。PHPUnit 被配置为入口点,因此每次您想执行 Docker 化的 PHP 开发容器中的测试时,只需运行 docker-compose up 即可。