curl(八)时间和变量以及配置

一  时间

①  --connect-timeout  连接超时时间

②  -m | --max-time  数据最大传输时间

-m: 限制curl '完成时间(overall time limit)'

-m,--max-time '<seconds>' 整个'交互完成'的超时时间

场景: 通过设置'-m'参数,可以避免'请求时间过长'而导致的'超时'错误

curl -m 10  ...

批量测试主机的连通性

二   -w  相关变量

1、'\n' --> '换行'              --> 支持其它的'制表符'

2、不同的'curl版本','变量不同'

3、通过变量能'判断什么'?

①  -w | --write-out

1、'基本'描述

2、'基本'语法

3、下面涉及'变量解读'

②  url_effective

含义:  最终'请求'的url  --> 可能会涉及'多次重定向Location'

③  http_code

同'response_code':  http的响应'状态码'

④  content_type

说明: '请求'的'content_type'

⑤  http_connect

说明: 代理涉及的'CONNECTION'请求的'响应状态码'

⑥  filename_effective

curl 执行结果最终'写入的文件名',当加上了 '-o、-O' 才有'意义'.

⑦  上传和下载

⑧  本地和远程的 ip和端口

⑨  个时间

通过curl命令分析http接口请求各阶段的耗时等

1、time_namelookup  '域名解析'时间

2、time_connect 从'开始到建立TCP连接'完成所用时间
​
TCP 连接建立的时间: 就是'三次握手'的时间

解读:

  1、连接时间,从'0'开始到建立TCP连接完成所用时间,'包括'前边'DNS解析'时间

  2、如果需要'单纯的得到连接'时间,用这个time_connect时间'减去'前边time_namelookup时间

3、time_appconnection  'SSL/SSH'

其记录的值是从'开始请求到应用层协议握手完成'的时间,也就是'从0开始'的一个'时间偏移量'

SSL 协议处理时间: 'time_appconnect - time_connect'

4、time_pretransfer  从'开始到准备传输'的时间

5、time_redirect

6、time_starttransfer

描述: 发送请求'第一个字节'到到'返回第一个字节'之间的时间 --> '存疑'

 curl时间统计参数time_starttransfer含义以及在文件上传场景下可能的误解

7、time_total

说明:总时间,按'秒'计,精确到'小数点后三位'

time_total: '整个请求所消耗的时间',包含dns解析、tcp握手和ssl握手的时间

8、低版本curl'不支持'相关变量

备注: '报错'信息如下

9、结合'shell'变量

10、以文件的形式,增强'可读性'

curl -w "@var.txt" http://www.wzj.com/ceshi

curl -o /dev/null -s -w "\n\nDNS查询时间: %{time_namelookup} 

TCP建连时间: %{time_connect} SSL建连时间: %{time_starttransfer} 

首包响应时间:%{time_starttransfer} 总耗时: %{time_total}\n" 

https://www.baidu.com

三   curl的配置文件

①  默认行为

说明: 默认不存在'~/.curlrc'此文件

②  -K

-K/–config: 指定'配置'文件,从配置文件中'读取参数'

说明: '自定义'加载'配置选项'文件

注意: 配置文件的'注释'、'内容格式'

-K后接配置文件名,如果使用 '-' 符号,则通过'stdin'输入配置

echo "user = user:passwd" | curl -K - https://www.baidu.com

查找顺序: 先'检查CURL_HOME' --> 类Unix系统上,它'还会'尝试从'主目录'中加载.curlrc文件

③  -q

disbale '禁止'加载配置选项文件

使用 curl --resolve 和 http 代理

说明: 通过'--environment'传递变量,可以使用-w '引用变量'

④  代理补充

curl 8.3.0 的 variable

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值