24. 卷曲¶
此方法是从 curl 命令创建 http 请求。如果您想了解更多关于 curl 的信息,请点击 Curl 文档。
24.1 如何输入(a)命令¶
从 cURL 命令创建测试计划
- 要从 cURL 创建导入,请打开工具菜单并单击从 cURL 导入。
- 有两种方法可以进入 curl 命令行。首先,我们可以手动输入。其次,我们可以导入包含 curl 命令行的文件。该工具支持同时输入多个 curl 命令行。
- 然后,单击Create Test Plan按钮,一个新的 HTTP Sample 将被添加到测试计划中。
24.2 支持卷曲选项¶
- -H , --header <标题>
- 获取网页时使用的额外标题。
- -X , --request <命令>
- 指定与 HTTP 服务器通信时要使用的自定义请求方法。
- --压缩
- 使用 curl 支持的算法之一请求压缩响应,并返回未压缩的文档。
- -A , --user-agent <代理字符串>
- 指定要发送到 HTTP 服务器的用户代理字符串。
- -b , --cookie <名称=数据>
- 将数据作为 cookie 传递给 HTTP 服务器。
- -d和朋友
-
通过 POST 请求发送数据
将 POST 请求中的指定数据发送到 HTTP 服务器。如果在同一命令行上多次使用此选项,则指定的数据片段将与分隔的“ & ”字符合并在一起。因此,使用' -d name=daniel -d Skill=lousy '会生成一个看起来像' name=daniel&skill=lousy '的POST块。
- -d , --data <数据> , --data-ascii <数据>
- 使用@上传文件
- --data-raw <数据> >
- --data-raw <数据>
- 这完全按照指定的方式发布数据,没有任何额外的处理。如果您以字符@ 开始数据,则其余部分应为文件名。
- --data-raw <数据> ta>
- 这将发布数据,类似于其他--data选项,不同之处在于它执行 URL 编码。
- --data-raw <数据>
- 这类似于--data发布数据,但没有对@字符的特殊解释。
- -F和朋友们
-
这让 curl 可以模拟用户按下提交按钮的填写表单。
- -F , --form <名称=内容>
- 使用@上传文件
- --form-string <名称=内容>
- -u , --user <用户:密码>
- 指定用于服务器身份验证的用户和密码。
- --基本,--摘要
- 告诉 curl 使用 HTTP 身份验证。
- --cacert和朋友们
-
告诉 curl 在使用 HTTPS 获取文件时使用指定的客户端证书文件
- --cacert <CA 证书>
- --capath <CA 证书目录>
- --ciphers <密码列表>
- --cert-status
- --cert-type <类型>
- -G,--得到
- 将帖子数据放在 URL 中并使用 get 替换帖子。
- --no-keepalive
- 禁用在 TCP 连接上使用 keepalive 消息。
- -e , --referer <URL>
- 将Referer Page信息发送到HTTP 服务器。
- -L,--位置
- 如果服务器报告请求的页面已移动到不同的位置,此选项将使 curl 在新位置重做请求。
- -i , --包括
- 在输出中包含 HTTP 标头。
- --connect-timeout <秒>
- 连接到服务器可能花费的最长时间(以秒为单位)。
- --keepalive-time <秒>
- 此选项设置连接在发送保活探测之前需要保持空闲的时间以及各个保活探测之间的时间。
- -m , --max-time <秒>
- 允许整个操作花费的最长时间(以秒为单位)。
- -x , --proxy <[protocol://][user:password@]proxyhost[:port]>
- 使用指定的 HTTP 代理。如果未指定端口号,则假定为端口1080。
- -U , --proxy-user <用户:密码>
- 指定用于代理身份验证的用户和密码。
- -k , --不安全
- 此选项明确允许 curl 执行不安全的SSL 连接和传输。
- - 生的
- 使用时,它会禁用所有内容的内部 HTTP 解码或传输编码,而是让它们原封不动地传递。
- -我, --头
- 仅获取 HTTP 标头。HTTP 服务器具有HEAD方法,该方法用于获取文档标题以外的任何内容。
- --interface <名称>
- 使用指定的接口执行操作。您可以输入接口名称、IP 地址或主机名。
- --proxy-ntlm / --proxy-negotiate
- 告诉 curl 在与给定代理通信时使用 HTTP BASIC/NTLM/Digest 身份验证。
- --dns-servers <地址>
- 通过 DOH 解析主机名。
- --resolve <主机:端口:地址>
- 为特定主机和端口对提供自定义地址。
- --limit-rate <速度>
- 指定您希望 curl 使用的最大传输速率。
- --max-redirs <数量>
- 设置可以遵循的最大重定向数。
- --noproxy <无代理列表>
- 不使用代理的主机的逗号分隔列表(如果已指定)。
24.3 警告¶
当您输入的命令被忽略或包含警告内容时,我们将在 HTTP 请求的注释部分显示警告。
24.4 示例¶
使用 cookie
curl -X POST "https://example.invalid" -b 'username=Tom;password=123456'
使用数据
curl -X POST "https://example.invalid" --data 'fname=a&lname=b'
使用表格
curl -X POST "https://example.invalid" -F 'lname=a' -F 'fname=b' -F 'c=@C:\Test\test.txt'
使用代理服务器
curl 'https://example.invalid/' -x 'https://aa:bb@proxy.invalid:8042'
使用授权
curl "https://example.invalid" -u 'user:passwd' --basic
使用 DNS
curl "https://example.invalid" --dns-servers '0.0.0.0,1.1.1.1'