分类: Hprose for PHP
-
本文记录了在 Yii 2.0 中实现 RPC 的 ActiveDataFilter 的过程。文章主要解决了将 RESTful API 接口从本地迁移至 RPC 架构下,并支持筛选参数的问题。通过新建 RPC 服务端控制器、客户端模型及方法文件,实现了客户端对服务端的请求转发与参数处理。测试结果显示,GET 请求能正确携带筛选参数并返回预期数据,日志验证了请求经由客户端转发至服务端的流程,最终完成了接口迁移与筛选功能支持。
-
文章基于 yiisoft/yii2-app-advanced 演示了在 GitHub 新建仓库并实现远程过程调用应用的过程。内容包括在 rpc 目录创建基于 Hprose 2.0 的服务端,在 api 目录实现客户端,配置 HTTP 服务器及解决 Windows 环境下的并发问题。同时,通过 Gii 生成 v1 模块以实现版本控制,整理模型类与命名空间,并新建公共逻辑类以支持属性定义与数据验证,最终通过测试接口验证了服务端与客户端的交互正常。
-
本文介绍了基于 yiisoft/yii2-app-advanced 模板在 GitHub 上新建仓库并实现 RPC 服务端的过程。文章首先通过 Postman 验证了 API 目录中 RESTful 风格接口的正常运行,随后使用 Composer 安装 Hprose,复制并调整 frontend 目录以创建独立的 RPC 应用。接着,文章详细说明了配置 Bootstrap 别名、编辑环境脚本、新增 Nginx 虚拟主机及 Vagrant 配置的具体操作,并对测试套件进行了构建与运行。最终通过访问接口地址和 Vagrant 环境,验证了配置符合预期。
-
本文解决了在 Yii 2 中基于 Hprose 实现 RPC 服务时报错 passthru() has been disabled for security reasons 的问题。本地环境接口请求成功,但开发环境请求失败,排查后发现是 PHP 配置限制了该函数。通过编辑客户端与服务端的 Dockerfile,从 disable_functions 配置项中删除 passthru,重新部署后再次请求接口,响应成功恢复正常。
-
文章记录了通过 Composer 将 Yii2 升级至 2.0.9、Hprose 升级至 2.0 后解决兼容性问题的过程。面对文件路径错误,通过修改 composer.json 引入 hprose-yii 开发版;针对属性报错,调整 Service.php 中的 session 获取方式;针对客户端调用异常,将参数设置为同步模式,最终使服务恢复正常运行。
-
本文记录了基于Hprose for PHP 1.5.6与Yii2.0.7的RPC实现流程。首先通过Composer配置中国全量镜像并安装Yii2高级应用模板,解决环境配置与依赖报错。接着新增Member模块并设置路径别名,随后安装Hprose扩展。服务端通过继承控制器发布指定操作方法,客户端利用HTTP Client类调用接口并成功返回数据,实现了基本的远程通信功能。
-
文章针对在PHP 5.6环境下使用Hprose for PHP运行服务端与客户端时,报错提示自动填充HTTP_RAW_POST_DATA已被弃用的问题,提出了解决方案。通过修改php.ini配置文件,将always_populate_raw_post_data项的值设置为-1,再次运行客户端程序即可成功消除报错,使服务端正常返回Hello World,从而完成了对PHP 5.6特性的兼容处理。
