acseo / profiler-cli
Symfony CLI 命令,用于与 Symfony Profiler 交互,显示并导出 HTTP 请求为 curl 命令。
dev-main / 1.0.x-dev
2024-09-10 13:29 UTC
Requires
- php: ^7.4 || ^8.0
- symfony/console: ^5.0 || ^6.0
- symfony/http-kernel: ^5.0 || ^6.0
- symfony/profiler-pack: ^1.0
This package is auto-updated.
Last update: 2024-09-10 13:31:26 UTC
README
此 Symfony 扩展提供与 Symfony Profiler 交互的 CLI 命令。它允许用户显示 profiler 令牌的详细信息,导出 HTTP 请求的 curl 命令,并以高效灵活的方式与 profiler 数据交互。
特性
- 列出带有详细信息的最近 profiler 令牌(IP、URL、HTTP 方法等)。
- 显示特定令牌的详细信息,包括头信息、请求体和生成的 curl 命令。
- 导出单个令牌或检索到的所有令牌的 curl 命令。
- 通过易用的交互式菜单或使用命令行选项进行直接访问。
要求
- PHP 7.4 或更高版本
- Symfony 5.x 或 6.x
- Symfony Profiler 已启用
安装
- 通过 composer 安装包
composer require acseo/profiler-cli
- 在 bundles.php 中启用包
return [ // Other bundles ACSEO\ProfilerCliBundle\ProfilerCliBundle::class => ['dev' => true], ];
- 通过检查 config/packages/dev/web_profiler.yaml 确保环境中的 Symfony Profiler 已启用
web_profiler: toolbar: true intercept_redirects: false
使用方法
列出 Profiler 令牌
默认情况下,命令列出最近的 profiler 令牌,显示它们的令牌、IP 地址、HTTP 方法、URL 和请求时间。
php bin/console acseo:profiler-cli
您可以使用以下选项过滤令牌
--ip
:按 IP 地址过滤--url
:按 URL 过滤--method
:按 HTTP 方法过滤(例如,GET
、POST
)--limit
:指定要检索的令牌数(默认为10
)--start
:指定起始日期,格式为Y-m-d H:i:s
--end
:指定结束日期,格式为Y-m-d H:i:s
示例
php bin/console acseo:profiler-cli --limit=5 --method=POST
显示令牌详细信息
您可以直接通过传递 --token
选项显示特定令牌的详细信息
php bin/console acseo:profiler-cli --token=abc123
这将显示 HTTP 请求信息,包括头信息、请求体和生成的 curl 命令。
导出 curl 命令
要导出特定令牌的 curl 命令,同时使用 --token
和 --export
选项
php bin/console acseo:profiler-cli --token=abc123 --export
这将生成一个文件,格式为 curl_YmdHis-abc123.txt
,其中包含 curl 命令。
您还可以导出检索到的所有令牌的 curl 命令
php bin/console acseo:profiler-cli --export
交互式菜单
在没有选项的情况下运行命令时,将显示交互式菜单。您可以使用以下键导航菜单
m: Redisplay the token list
d: Display the details of a specific token
e: Export the curl command for the selected token
q: Quit the program
示例用例
- 自动化测试:使用生成的 curl 命令重放 HTTP 请求并测试 API 行为。
- 调试:快速获取请求头和体进行分析。
- 分析:通过 IP、URL 或 HTTP 方法过滤和分析了特定的请求。
贡献
我们欢迎贡献!请提交一个拉取请求或提出一个讨论问题。请确保遵循现有的编码风格,并在适用的情况下包含单元测试。
许可证
此包根据 MIT 许可证许可。有关详细信息,请参阅 LICENSE 文件。