rdr/snowflakejodo

SnowflakeJodo: 为 Laravel 设计的 Snowflake 封装器,旨在优化 Laravel 应用程序内的连接时间。

dev-master 2024-06-12 17:44 UTC

This package is auto-updated.

Last update: 2024-09-12 18:14:51 UTC


README

Latest Version on Packagist Total Downloads License

SnowflakeJodo 通过专门的 Node.js API 为您提供一个方便的方法,将 Laravel 应用程序与 Snowflake 数据仓库集成。它简化了数据检索并减少了直接与 Snowflake 交互中常见的连接开销。

安装

  1. 需要包:使用 Composer 在您的 Laravel 项目中安装包

    composer require rdr/snowflakejodo

    这将安装包及其依赖项。

  2. 发布配置:发布包配置文件

    php artisan vendor:publish --tag=snowflakejodo-config

    这将在您的项目中创建一个 config/snowflakejodo.php 文件。

  3. 配置 API URL:更新 .env 文件中的 api_url 值以指向您运行的 Node.js API 端点

    SNOWFLAKE_JODO_API_URL=https://:3001

    https://:3001 替换为您的 API 的实际 URL。

  4. 创建和运行 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