定制 ray/web-query 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

ray/web-query

最新稳定版本:1.0.0-rc1

Composer 安装命令:

composer require ray/web-query

包简介

Web API access mapping framework for Ray.MediaQuery

README 文档

README

Web API access mapping framework for Ray.MediaQuery.

Installation

composer require ray/media-query-web

Note: This package depends on ray/media-query which provides the core database query functionality.

Usage

Web API Query

Create an interface with #[WebQuery] attribute:

<?php
use Ray\MediaQuery\Annotation\WebQuery;

interface ApiInterface
{
    #[WebQuery('api.get')]
    public function get(string $id): array;
}

Create a web query configuration file web_query.json:

{
  "api": {
    "get": {
      "method": "GET",
      "path": "https://api.example.com/users/{id}"
    }
  }
}

Install the module:

<?php
use Ray\MediaQuery\MediaQueryWebModule;
use Ray\MediaQuery\WebQueryConfig;
use Ray\Di\Injector;

$webConfig = new WebQueryConfig('web_query.json', ['domain' => 'example.com']);
$module = new MediaQueryWebModule($webConfig);
$injector = new Injector($module);

$api = $injector->getInstance(ApiInterface::class);
$result = $api->get('123'); // GET https://api.example.com/users/123

Features

  • Web API Queries: Execute HTTP requests via interface methods
  • URI Template Support: Dynamic URL parameter binding
  • Multiple Response Types: JSON array, string, or PSR-7 message
  • Parameter Injection: Automatic parameter conversion and injection
  • HTTP Client Integration: Built on Guzzle HTTP client

Requirements

  • PHP 8.1+
  • ray/media-query ^1.0

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-07-30