关于 http-request
通过命令行脚本发送 HTTP 请求的技能,适用于 API 调用、测试及下载数据。支持多种请求方法、JSON 请求与响应处理、认证、表单上传和响应保存。
主要功能
- 01发送 GET、POST、PUT、PATCH、DELETE 请求
- 02JSON 请求体与响应格式化
- 03Bearer、Basic 和自定义头认证
- 04表单数据与文件上传
- 05重定向、超时及响应保存
适用场景
- 01调用带认证的 API 端点
- 02发送 JSON 数据并检查响应
- 03上传文件或将响应保存到文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ winsorllc/ upgraded-carnival --skill http-request安装后在 Claude Code 中输入/http-request确认已加载。
附带文件index.jsrequest.sh
详细介绍
HTTP 请求技能
发起 HTTP 请求,并增强输出和 JSON 处理。
何时使用
✅ 在以下情况下使用此技能:
- “向……发起 GET 请求”
- “将此 JSON POST 到……”
- “调用此 API 端点”
- “从 URL 下载数据”
- “测试 API”
何时不要使用
❌ 在以下情况下不要使用此技能:
- 简单的文件下载 → 使用 web-fetch/download.sh
- 浏览器自动化 → 使用 browser-tools
- 网页抓取 → 使用 web-fetch
命令
GET 请求
{baseDir}/request.sh GET "https://api.example.com/data"
{baseDir}/request.sh GET "https://api.example.com/data" --json
{baseDir}/request.sh GET "https://api.example.com/data" --header "Authorization: Bearer token"
POST 请求
{baseDir}/request.sh POST "https://api.example.com/create" --data '{"name": "test"}'
{baseDir}/request.sh POST "https://api.example.com/create" --file data.json
{baseDir}/request.sh POST "https://api.example.com/upload" --form "[email protected]"
PUT/PATCH/DELETE 请求
{baseDir}/request.sh PUT "https://api.example.com/update/1" --data '{"name": "updated"}'
{baseDir}/request.sh PATCH "https://api.example.com/patch/1" --data '{"status": "active"}'
{baseDir}/request.sh DELETE "https://api.example.com/delete/1"
使用身份验证
{baseDir}/request.sh GET "https://api.example.com/private" --auth bearer:TOKEN
{baseDir}/request.sh GET "https://api.example.com/private" --auth basic:user:pass
{baseDir}/request.sh GET "https://api.example.com/private" --header "X-API-Key: secret"
自定义选项
{baseDir}/request.sh GET "https://api.example.com" --timeout 60
{baseDir}/request.sh GET "https://api.example.com" --follow --max-redirects 5
{baseDir}/request.sh GET "https://api.example.com" --verbose
选项
--data <json>:请求正文(JSON 字符串)--file <path>:从文件读取请求正文--form <data>:表单数据或文件上传(@filename)--header <header>:自定义标头(可重复使用)--auth <type:credentials>:身份验证(bearer:TOKEN 或 basic:user:pass)--timeout <sec>:请求超时时间(默认值:30)--json:格式化 JSON 响应--verbose:显示请求详情--follow:跟随重定向--max-redirects <n>:最大重定向次数(默认值:5)--out <file>:将响应保存到文件
示例
获取并格式化 JSON:
{baseDir}/request.sh GET "https://jsonplaceholder.typicode.com/users" --json
POST 数据:
{baseDir}/request.sh POST "https://api.example.com/users" \
--data '{"name": "John", "email": "[email protected]"}' \
--json
使用 Bearer 令牌:
{baseDir}/request.sh GET "https://api.example.com/protected" \
--auth bearer:your_token_here
上传文件:
{baseDir}/request.sh POST "https://api.example.com/upload" \
--form "[email protected]"
注意事项
- 对于 JSON 数据,自动添加 Content-Type: application/json
- 处理响应正文解析
- 使用 --verbose 时显示响应标头
- 支持多部分表单数据上传
评论
支持 Markdown