如何使用curl命令发送POST请求(带token)

使用curl 命令发送POST请求

记录curl命令使用说明。

curl命令简介

  • curl 是常用的命令行工具,用来请求 Web 服务器。
  • 它的名字就是客户端(client)的 URL 工具的意思。它的功能非常强大,命令行参数多达几十种。
  • 如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。

curl命令发送请求(带token)

curl命令发送POST请求:

参数内容:

  • -H 请求头
  • -d POST内容
  • -X 请求协议
curl -X POST -H 'Authorization:{{token}}' -H 'Content-Type: application/json' -d '{"name": "vipTest1","vpcId": "1546774307671072768","subnetId": "96e6148f-486b-41ce-8694-16f249002d96","fixedIp": "192.168.10.222"}' localhost:8080/vpc/v1/vips

curl命令发送GET请求:

curl -X GET -H 'Authorization:{{token}}' localhost:8080/vpc/v1/vips

curl命令行发送POST/GET请求

curl命令是一个利用URL规则在命令行下工作的文件传输工具。使用一种受支持的协议,从远程服务器传输数据,或将数据传输到远程服务器。

默认情况下,已安装在macOS和大多数Linux发行版上。curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。

在进行web后台程序开发测试过程中,常常会需要发送url进行测试,使用curl可以方便地模拟出符合需求的url命令。

curl发送GET请求

  • 语法格式:
curl protocol://address:port/url?args 
  • 示例:
curl http://127.0.0.1:8080/login?admin&passwd=12345678  # 带参数请求,参数用&连接

curl发送POST请求

  • 语法格式:
curl -X POST [options] [URL]
 
# 使用该-F选项时,curl使用的默认Content-Type是“multipart/form-data”,以key=value配对形式
curl -X POST -F 'name=Jason' -F 'email=jason@example.com' http://127.0.0.1:8000/login
 
# 使用-d选项,可以使用&符号对发送数据进行合并
curl -X POST -d 'name=Jason&email=jason@example.com' http://127.0.0.1:8000/login
 
# 使用-H选项,指定Content-Type为application/json发送JSON对象
curl -X POST -H "Content-Type:application/json"  -d '{"user": "admin", "passwd":"12345678"}' http://127.0.0.1:8000/login  # 通过-d指定json data内容
 
# 文件上传,需在文件位置之前添加@符号
curl -X POST -F 'image=@/home/user/Pictures/wallpaper.jpg' http://example.com/upload