mattlibera / mfl-api-wrapper-laravel
MFL (MyFantasyLeague) API PHP 库的 Laravel 包装器
Requires
- php: >=5.4.0
- mattlibera/mfl-api-php-library: dev-master
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-27 20:50:30 UTC
README
联系方式:matt@mattlibera.com
简介
此软件包是 MFL API PHP 库的 Laravel 包装器,以便可以在 Laravel 应用程序中使用 MFL API PHP 库。
这是一个正在进行中的项目。目前不建议用于生产应用程序。
安装
composer require 'mattlibera/mfl-api-wrapper-laravel'- 如果您正在运行 Laravel 5.5+,您可以跳过此步骤,因为自动包发现将自动处理。对于 Laravel 5.4 及以下版本,请手动将
MattLibera\MflApiLaravel\ServiceProvider::class,添加到您的config/app.php文件中。 - 运行
php artisan vendor:publish --provider='MattLibera\MflApiLaravel\ServiceProvider以发布mfl-api.php配置文件 - 在您的
.env文件中设置您的环境凭证,并在config/mfl-api.php中设置您的配置选项
注意:不要为
MFL_API_HOST使用协议(http:// 或 https://)。相反,将您的协议(首选 https)、仅字母的字符串放入MFL_API_PROTOCOL
MFL_API_PROTOCOL=
MFL_API_HOST=
MFL_API_USERNAME=
MFL_API_PASSWORD=
MFL_API_KEY=
请注意,您不需要同时使用 USERNAME/PASSWORD 组合和 API KEY 组合;您可以使用其中一个。如果您的应用程序将允许其他人登录 MFL 以对其账户中的联赛执行操作,那么您可能会使用前者。如果应用程序主要面向专员,那么后者可能就足够了。您可以通过登录联赛然后在菜单中转到帮助 > 开发者 API 来获取您的 API 密钥。
依赖项
此软件包依赖于 mattlibera/mfl-api-php-library 和 barryvdh/laravel-debugbar(开发)
用法
基本用法 / 入门
在您的代码中,假设您已正确在 .env 文件中设置了您的信息/凭证,您应该能够实例化 MattLibera\MflApiLaravel\MflApi 类,然后使用其可用的任何方法(从 MattLibera\MflApi\MflApi 继承)来发出 API 调用。
配置选项
通知模式
此库中内置了两种通知选项。您可以将信息作为闪存消息显示在屏幕上,或将其记录在 Laravel 日志中(无论您已设置什么)。
在 config/mfl-api.php 文件中,notification_mode 是一个数组。在内部,添加一个或两个 flash 和 log。
如果您选择将其集成到应用程序的高级自定义通知/日志记录系统中,您可以保留此数组为空以禁用这两种方法,然后根据 API 调用的返回数组(API 类返回每个调用的整个响应,包括响应代码)来处理自己的日志记录。
截至版本 0.2,不包含任何闪存消息包。您可以自由安装自己的 - 推荐
laracasts/flash或实现类似 API 的其他内容。
调试模式
需要 Barryvdh 的 DebugBar
如果您在 config/mfl-api.php 文件中打开调试模式,调用的一些额外信息将被写入 Debugbar。这包括时间、散列缓存密钥和每个调用的完整结果。
> 注意:根据此软件包的最佳实践,此功能仅在工作环境不是 production 时才有效。
缓存
为了速度、遵守速率限制以及整体性能,该库中内置了API调用缓存功能。这利用了Laravel缓存机制(类似于日志,可以在Laravel配置中按需设置)。您可以通过在.env文件中添加MFL_API_CACHING=off来选择性地禁用此功能。
这种缓存并不复杂;它实际上只是缓存API调用返回的结果体。根据您的应用程序将要执行的操作,您可能希望进一步将缓存存储到某些数据库表中。但这是为您提供的,无论对您来说价值如何。
缓存TTL
默认情况下,缓存的有效期设置为10分钟,但您可以在.env文件中添加MFL_API_CACHE_MINUTES=x来设置缓存在x分钟后过期。
缓存的端点
仅针对特定的端点执行缓存操作(例如,相当于典型GET请求的请求)。显然,您不希望缓存旨在实际修改MFL中的信息的请求(相当于POST、PATCH或DELETE请求)。
默认情况下,config/mfl-api.php中设置了一套基本的端点。如果您想更改哪些端点被缓存/不被缓存(或添加您自己的端点),只需修改配置文件中的cached_endpoints数组。
在MFL中,“端点”的结构可能因操作而异。在这种情况下,我们只缓存‘export’操作,因此您可以假设cached_endpoints中列出的任何内容都是‘export’操作集下的命令。
版本历史
0.3
- 修复了认证问题,因此我们使用
api前缀进行认证调用,然后将主机重置为配置中的值。
0.2.1
- PSR4
0.2
- 移除了对
standaniels/flash库的依赖。
0.1
- 第一个实际发布版本。
- 为MFL凭证集成
.env。 - 调试模式
- 缓存