tourze/json-rpc-caller-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tourze/json-rpc-caller-bundle

最新稳定版本:0.1.5

Composer 安装命令:

composer require tourze/json-rpc-caller-bundle

包简介

JsonRPC调用方管理

README 文档

README

English | 中文

Latest Version Build Status Quality Score Total Downloads

A Symfony bundle for managing JSON-RPC API callers, supporting secure client identification, signature verification, IP whitelist, and more.

Features

  • Manage JSON-RPC API callers (clients)
  • Unique AppID/AppSecret for each caller
  • IP whitelist and AES key support
  • Signature timeout mechanism
  • Audit fields for security and traceability
  • Easy integration with Symfony and Doctrine

Installation

Requirements

  • PHP >= 8.1
  • Symfony >= 6.4
  • Doctrine DBAL >= 4.0

Composer

composer require tourze/json-rpc-caller-bundle

Quick Start

  1. Register the bundle in your Symfony application (if not auto-discovered).
  2. Run Doctrine migrations to create the api_caller table.
  3. Configure your JSON-RPC clients in the database.

Example Usage

// Fetch a caller by AppID
$caller = $entityManager->getRepository(ApiCaller::class)->findOneBy(['appId' => 'your-app-id']);

// Validate signature, IP, etc. according to your business logic

Data Fixtures

This bundle provides data fixtures for testing and development environments. These can be used to quickly populate your database with different types of API callers.

Available Fixtures

  • ApiCallerFixtures: Creates 5 different types of API callers with various configurations

Loading Fixtures

Execute from your project root:

php bin/console doctrine:fixtures:load --group=json-rpc-caller

To preserve existing data, use the --append option:

php bin/console doctrine:fixtures:load --group=json-rpc-caller --append

Using in Tests

You can use references to these fixtures in your tests:

use Tourze\JsonRPCCallerBundle\DataFixtures\ApiCallerFixtures;
use Tourze\JsonRPCCallerBundle\Entity\ApiCaller;

// Get the default caller reference
$defaultCaller = $this->getReference(ApiCallerFixtures::DEFAULT_CALLER_REFERENCE, ApiCaller::class);

For more information, see src/DataFixtures/README.md.

Documentation

  • Entity: ApiCaller (see ENTITY_DESIGN.md)
  • Configuration: Standard Symfony bundle config
  • Repository: ApiCallerRepository

Contribution

  • Submit issues or pull requests via GitHub
  • Follow PSR coding standards
  • Add tests for new features

License

MIT License © tourze

Changelog

See CHANGELOG.md for details.

统计信息

  • 总下载量: 583
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-04-15