mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 12:45:32 +08:00
- 删除 tools:agent:publish 整套(不再兼容多套 IDE,只保留 .agents 目录) - helper.php 全部 27 个全局函数加 if (!function_exists()) 包裹,项目侧可在 app/common.php 定义同名函数覆盖 - ulthon-file-override-mechanism.md 新增全局函数覆盖章节 - AGENTS.md 删除智能体指导章节,PHP 8+ 改为 8.0+,MySQL 8+ 改为 5.7+ - AGENTS.md 项目结构树补全 tests/、extend/think/、source/ 子项 - README.md PHP 版本统一为 8.0+ - ulthon-base-app-architecture SKILL 路径补 admin/service/ 段 - ulthon-tools-http-call SKILL 补 --page-data 参数 - ulthon-naming-convention 补元数据头 - ulthon-update-workflow 统一 extend/think/ 归类
2.3 KiB
2.3 KiB
name, description
| name | description |
|---|---|
| ulthon-tools-http-call | 命令行调用后台控制器/URL 进行联调与功能验证(含默认 super token 模拟登录)。 |
tools:http:call(命令行 HTTP 调用工具)
何时使用
- 需要在命令行快速验证某个后台页面/接口是否正常返回。
- 需要绕过浏览器环境,在 CLI 中模拟已登录管理员请求。
- 需要用
--app/--controller/--action直接拼控制器路径调用。
基本用法
1) 直接按 URL 调用
php think tools:http:call --url="/admin/system.admin/index" --method=GET
2) 按控制器参数调用
php think tools:http:call --app=admin --controller=system.admin --action=index --method=GET
请求参数
--url:请求路径(支持以/开头的相对路径)。--method:GET/POST/PUT/PATCH/DELETE。--data:JSON 字符串,请求会自动带Content-Type: application/json。--body:原始请求体字符串。--headers:JSON 字符串的请求头对象(例如{ "Accept":"application/json" })。--app --controller --action:框架特性参数,用于拼控制器路径。--page-data:标志参数(无需值),等价于追加get_page_data=1参数 +Accept:application/json头。用于获取页面 assign 的数据(与 ulthon-page-api-dual-mode 配套使用)。
super token(默认模拟登录)
机制说明
tools:http:call默认会为每次请求生成一个新的 token,并写入Cache::store('login')。- 请求会自动携带
Authorization: Bearer <token>。 - 服务端会按既有 Bearer token 机制从
Cache::store('login')读取登录态,因此只要命令行与服务端使用同一套缓存即可生效。
指定模拟账号
php think tools:http:call --url="/admin/system.admin/index" --user-id=2
关闭 super token(回到未登录行为)
php think tools:http:call --url="/admin/system.admin/index" --super-token=false
常见现象与排查
- 仍提示“请先登录后台”:通常是命令行与服务端的缓存不共享,或服务端未运行/未走到同一环境配置。
- 返回“无权限访问”:说明已经是登录态,但该账号对当前节点没有权限;可以换
--user-id或调整权限节点。