📜  -d 在 curl 请求中 (1)

📅  最后修改于: 2023-12-03 14:59:00.962000             🧑  作者: Mango

在 Curl 请求中使用 '-d'

curl 是一个命令行工具,用于将数据从或者到服务器传送。

使用命令行向服务器发送数据时,我们可以使用 -d 参数来指定所要发送的数据。

基本用法

使用 -d 参数时,需要在后面跟着数据字符串。例如,以下命令将数据字符串 {"name": "Alice", "age": 24} 发送到服务器:

curl -d '{"name": "Alice", "age": 24}' http://example.com/api/user

当然,你也可以将数据字符串保存到文件中,然后使用 @ 符号来引用文件。例如:

curl -d @data.json http://example.com/api/user

data.json 文件的内容是:

{
  "name": "Alice",
  "age": 24
}
支持的数据类型

-d 参数支持多种数据类型,包括:

  • 字符串
  • JSON
  • URL 编码的表单数据

例如,以下命令将 URL 编码的表单数据 name=Alice&age=24 发送到服务器:

curl -d 'name=Alice&age=24' http://example.com/api/user
发送文件

如果要将文件作为数据发送到服务器,可以使用 @ 符号,引用文件路径。例如:

curl -d @file.txt http://example.com/api/user

其中,file.txt 是文件路径,文件中的内容将被发送到服务器。

发送二进制数据

有时需要向服务器发送二进制数据,可以通过在命令行中指定 -d 参数为 @-,然后使用输入重定向将二进制数据发送到 curl 命令中。例如:

curl -X POST -d @- http://example.com/api/user < binary.data

其中,binary.data 是二进制数据文件,输入重定向将其发送到 curl 命令中。

注:此时需要使用 -X 参数指定 HTTP 请求方法为 POST。

参考链接