rdr / snowflakejodo
SnowflakeJodo: 为 Laravel 设计的 Snowflake 封装器,旨在优化 Laravel 应用程序内的连接时间。
Requires
- guzzlehttp/guzzle: ^7.8
This package is auto-updated.
Last update: 2024-09-12 18:14:51 UTC
README
SnowflakeJodo 通过专门的 Node.js API 为您提供一个方便的方法,将 Laravel 应用程序与 Snowflake 数据仓库集成。它简化了数据检索并减少了直接与 Snowflake 交互中常见的连接开销。
安装
-
需要包:使用 Composer 在您的 Laravel 项目中安装包
composer require rdr/snowflakejodo
这将安装包及其依赖项。
-
发布配置:发布包配置文件
php artisan vendor:publish --tag=snowflakejodo-config
这将在您的项目中创建一个
config/snowflakejodo.php
文件。 -
配置 API URL:更新
.env
文件中的api_url
值以指向您运行的 Node.js API 端点SNOWFLAKE_JODO_API_URL=https://:3001
将
https://:3001
替换为您的 API 的实际 URL。 -
创建和运行 Node.js API:设置并运行一个单独的 Node.js API,该 API 处理与 Snowflake 的直接通信。确保 API 在您在
.env
中配置的 URL 上运行且可访问。
使用
建立连接
使用 connect()
方法创建 SnowflakeJodo 的实例
use Rdr\SnowflakeJodo\SnowflakeJodo; // In a controller: class MyController extends Controller { protected $snowflake; public function __construct() { $this->snowflake = SnowflakeJodo::connect(); } // ... your controller methods ... }
执行查询
在连接对象上使用 query()
方法运行 Snowflake SQL 查询
$results = $this->snowflake->query("SELECT * FROM users WHERE id = ?", [1]);
错误处理
SnowflakeJodo 如果连接到您的 API 或 API 从 Snowflake 返回错误时出现错误,将抛出 Rdr\SnowflakeJodo\Exceptions\SnowflakeConnectionException
。请在您的应用程序中优雅地处理此异常。
安全
- 安全配置 Node.js API:在配置和部署 API 时遵循安全最佳实践,例如使用环境变量存储凭据。
- API 身份验证(可选):通过在 Laravel 应用程序和 Node.js API 之间实现身份验证机制(例如,API 密钥、JWT)来增强安全性。
贡献
感谢您考虑为 SnowflakeJodo 贡献!在提交拉取请求之前,请阅读贡献指南。
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅许可证文件。
Dhiraj Lochib
- GitHub: @dhirajlochib