将 curl 转换为 HTTP
curl2code 将 curl 命令转换为原始 HTTP 请求格式。转换过程通过 WebAssembly 在您的浏览器中运行,以确保完全的隐私。对于 HAR 格式,请查看我们的 curl 转 HAR 转换器。对于 HTTPie,请参阅 curl 转 HTTPie。下方是实用的 HTTP 请求示例。
如何从浏览器复制 curl
- 1
打开开发者工具
按 F12 或 Ctrl+Shift+I 打开浏览器开发者工具。
- 2
进入 Network 标签页
点击 Network (网络) 标签页,并执行触发 HTTP 请求的操作。
- 3
复制为 cURL
右键点击请求 → Copy (复制) → Copy as cURL (复制为 cURL)。然后将其粘贴到上方。
常见问题解答
什么是原始 HTTP 格式?
原始 HTTP 显示了通过网络发送的实际协议文本:请求行 (GET /path HTTP/1.1)、标头和主体。它是 RFC 9110 中定义的规范表示。curl2code 生成原始 HTTP 请求格式,这对于在协议级别准确理解 curl 命令的作用非常有用。
原始 HTTP vs HAR vs HTTPie — 该选择哪种格式?
原始 HTTP 显示精确的协议表示 —— 最适合学习和文档。HAR 是为工具设计的 JSON 结构。HTTPie 是一种对人类友好的 CLI 语法。理解协议请选择原始 HTTP,分析请选择 HAR,脚本请选择 HTTPie。另请参阅 curl 转 HAR 和 curl 转 HTTPie。
身份验证在原始 HTTP 中是什么样的?
身份验证显示为标头行:Authorization: Bearer token123 或 Authorization: Basic dXNlcjpwYXNz。在原始 HTTP 中,你可以看到发送的确切标头 —— 从而轻松验证认证配置是否正确。curl2code 显示包含认证标头的完整请求。
表单数据在原始 HTTP 中是什么样的?
多部分表单数据会显示边界,每个部分都有自己的 Content-Disposition 和 Content-Type 标头,由边界字符串分隔。Content-Type 标头包含 multipart/form-data; boundary=...。原始 HTTP 揭示了库所抽象掉的确切结构。
HTTP 错误是如何表示的?
响应状态行显示代码:HTTP/1.1 404 Not Found 或 HTTP/1.1 500 Internal Server Error。响应标头可能包含用于速率限制的 Retry-After 或用于认证挑战的 WWW-Authenticate。理解原始 HTTP 有助于调试任何编程语言中的问题。
HTTP 版本之间有什么区别?
HTTP/1.1 使用基于文本的标头,每个连接一个请求(带有 keep-alive)。HTTP/2 在单个二进制连接上多路复用请求。HTTP/3 使用 QUIC(基于 UDP)以实现更快的连接建立。curl 通过 --http2 和 --http3 标志支持这三种版本。
常见的 HTTP 状态码是什么意思?
200 OK,201 Created,204 No Content —— 成功。301/302 重定向。400 Bad Request,401 Unauthorized,403 Forbidden,404 Not Found —— 客户端错误。500 Internal Server Error,502 Bad Gateway,503 Service Unavailable —— 服务器错误。429 Too Many Requests —— 触发速率限制。
如何使用原始 HTTP 进行调试?
将 curl2code 的原始 HTTP 输出与实际网络流量进行比较(使用 curl -v 获取详细输出)。检查标头、Content-Type、主体编码和 Content-Length 是否符合预期。mitmproxy、Wireshark 和 Fiddler 等工具可以显示任何客户端的原始 HTTP。对于 CLI 调试,请参阅 curl 转 HTTPie。
如何在原始 HTTP 中表示带有 JSON 正文的 POST 请求?
使用 curl 的 -X POST -d '{"key":"value"}' -H "Content-Type: application/json",curl2code 将其转换为原始 HTTP 格式:POST /api/data HTTP/1.1 Content-Type: application/json {'key':'value'}。JSON 正文和 Content-Type 请求头在输出中得以保留。curl2code 可以处理内联 JSON 和 @file.json 引用。
如何在原始 HTTP 中包含 Bearer 令牌授权?
当您使用 curl2code 转换 curl -H "Authorization: Bearer YOUR_TOKEN" URL 时,Bearer 令牌会保留在原始 HTTP 输出中:Authorization: Bearer YOUR_TOKEN。-H "Authorization: Bearer ..." 和 OAuth 令牌标志都会被自动检测。
Content-Type 在原始 HTTP 格式中是如何表示的?
在转换 curl -H "Content-Type: application/json" URL 时,curl2code 在原始 HTTP 中输出 Content-Type 为:Content-Type: application/json。常见类型包括 application/json、application/x-www-form-urlencoded 和 multipart/form-data。curl2code 保留原始 curl 命令中的确切 Content-Type。