cURL安装和常用实例

Posted IT飞牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cURL安装和常用实例相关的知识,希望对你有一定的参考价值。

cURL是一个利用URL语法在命令行下工作的文件传输工具,配置后,可以在命令行直接执行各类操作,也可以作为源码包,载入到各类后端开发,为后端提供文件传输能力;

安装

  1. 下载
    演示电脑是win10 64位,下载对应的包:全部下载地址zip地址
  2. 配置环境变量
    这里下载下来的文件有的不是zip格式,找下下载个zip的包,解压后,内部文件如图:

配置环境变量

  • 新建CURL_PATH系统变量;
  • 编辑PATH,加上这两行(具体路径根据curl包实际路径填写):
%CURL_PATH%\\I386
C:\\Program Files (x86)\\curl-7.78.0-win64-mingw\\bin	


3. 执行
打开base、或者cmd命令行工具,执行curl -h,如图:

前端常用实例

对于前端从业人员来说,curl对接口的巡检功能还是非常实用的,可以使用curl查看接口的运行状况;例如,我们需要查看某个接口的性能耗时,可以这么来做:

请求数据

  1. 打开chrome>devtool>network
    找到接口请求记录,右键单击copy as cURL命令。

    拷贝的代码长这样:
curl 'http://127.0.0.1:7001/auth/login' \\
  -H 'Connection: keep-alive' \\
  -H 'Pragma: no-cache' \\
  -H 'Cache-Control: no-cache' \\
  -H 'Accept: application/json, text/plain, */*' \\
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7InVpZCI6MX0sImlhdCI6MTYyOTU5ODcyNSwiZXhwIjoxNjI5NTk4NzM1fQ.6lvBhCuwluXH8g_oDMAL-6nBMGXVarPlnwXtx4kEWuY' \\
  -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/86.0.4240.198 Safari/537.36' \\
  -H 'Content-Type: application/json;charset=UTF-8' \\
  -H 'Origin: http://127.0.0.1:8080' \\
  -H 'Sec-Fetch-Site: same-site' \\
  -H 'Sec-Fetch-Mode: cors' \\
  -H 'Sec-Fetch-Dest: empty' \\
  -H 'Referer: http://127.0.0.1:8080/' \\
  -H 'Accept-Language: zh-CN,zh;q=0.9' \\
  --data-binary '{"name":"admin","password":"123"}' \\
  --compressed
  1. 在base中执行后返回的数据如图:

查看请求各环节耗时

上面操作可以设置请求头,设置参数,用curl的方式来发送一个ajax请求,然后返回请求到的数据。
有时我们不需要看返回数据,而是想看整个请求过程中,各个环节的耗时,例如:域名解析、TCP连接、服务器响应、数据接收等…

可供查看的环节,变量名解释

  • time_namelookup :DNS 域名解析的时候,就是把 https://zhihu.com 转换成 ip 地址的过程
  • time_connect :TCP 连接建立的时间,就是三次握手的时间
  • time_appconnect :SSL/SSH 等上层协议建立连接的时间,比如 connect/handshake 的时间
  • time_redirect :从开始到最后一个请求事务的时间
  • time_pretransfer :从请求开始到响应开始传输的时间
  • time_starttransfer :从请求开始到第一个字节将要传输的时间
  • time_total :这次请求花费的全部时间

还是拿我们刚刚请求的的接口(/auth/login)为例,加入下面这些配置:

  -o /dev/null  \\
  -s  \\
  -w "\\
	time_namelookup:%{time_namelookup}\\t
	time_connect: %{time_connect}\\t
	time_appconnect: %{time_appconnect}\\t
	time_redirect: %{time_redirect}\\t
	time_pretransfer: %{time_pretransfer}\\t
	time_starttransfer:%{time_starttransfer}\\t
	time_total: %{time_total}\\t"

base中执行代码返回如图:

Linux curl命令详解

以上是关于cURL安装和常用实例的主要内容,如果未能解决你的问题,请参考以下文章

postman 自动生成 curl 代码片段

postman 自动生成 curl 代码片段

CentOS yum 命令出现 [Errno 14] curl#6 - "Couldn't resolve host ..." 的解决方法(代码片段

nodejs常用代码片段

有啥方法可以让 curl 连接并让我在输入时输入和发送身体片段?

curl库pycurl实例及参数详解