首页 > 技术文章 > 在线排错之curl命令详解

1315925303zxz 2019-02-28 16:05 原文

春回大地万物复苏,好久不来,向各位博友问好。

简介

cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。支持的通信协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。还支持SSL认证、HTTP POST、HTTP PUT、FTP上传, HTTP form based upload、proxies、HTTP/2、cookies、用户名+密码认证

好了,废话不多说。总结下我们Java程序员最关注的问题吧,使用curl命令在服务器上模拟各种类型的请求,包括设置请求头参数,json参数的传输等等。 
  1. get请求相关
  • 模拟简单get请求

curl http://127.0.0.1:8080/eim-platbase/api/business-data/supplier -v

  • 模拟get请求设置请求头

curl -H 'Authorization:917788E3EC48C4DDD8DD2C49E37D37AC' http://uatapi.vipkid-inc.com/eim-platbase/api/business-data /supplier -v

  • 案例演示

  • 命令参数详解

  1. -G:代表当前请求是get
  2. -v:返回详细的请求信息,包括请求头/请求体等信息。
  3. -H:设置请求头,多个请求头使用多个-H
  4. -I:只显示http请求头信息
  5. -A:自定义用户代理,常用来伪装各种浏览器请求

  1. post请求相关
  • 模拟post请求传输key=value参数

curl http://127.0.0.1:8080/api/supplierAccount/createAccountInfo -X POST -d '"title=comewords&content=articleContent"'

  • 模拟post请求传输json参数

curl http://127.0.0.1:8080/api/supplierAccount/createAccountInfo -X POST -H 'Content-Type:application/json' -d '{"title=comewords&content=articleContent"}' -v

  • 模拟post请求设置多个请求头

curl http://127.0.0.1:8080/api/supplierAccount/createAccountInfo -X POST -H 'Content-Type:application/json' -d '{"title=comewords&content=articleContent"}' -v

  • 案例演示

  • 命令参数详解

  1. -X POST:代表当前请求是post请求
  2. -v:返回详细的请求信息,包括请求头/请求体等信息。
  3. -H:设置请求头,多个请求头使用多个-H
  4. -I:只显示http请求头信息
  5. -A:自定义用户代理,常用来伪装各种浏览器请求

推荐阅读