你的位置:开元ky888棋牌app网页版官网入口 > 新闻中心 > 怎么运用cURL获取申请和呼当令光?
怎么运用cURL获取申请和呼当令光?
发布日期:2022-08-07 02:26    点击次数:129

本文转载自微信群众号「精益码农」,作者StackOverflow 。转载本文请联络精益码农群众号。

cURL在我的眼里,就是一个httpClient手办,老伴计们晓得怎么获取cURL要求的详细耗时吗? ??

cURL支持项目化输出要求的详细信息(请参阅cURL手书页的-w、–write out 获取更多信息)。

如题,我们只关注怎么精通cURL要求的时光细节, 下面时光以s为单位。

1. 创立一个文本文件curl-format.txt, 粘贴下面内容
time_namelookup:  %{time_namelookup}s\n      time_connect:  %{time_connect}s\n   time_appconnect:  %{time_appconnect}s\n  time_pretransfer:  %{time_pretransfer}s\n     time_redirect:  %{time_redirect}s\n ime_starttransfer:  %{time_starttransfer}s\n                   ----------\n        time_total:  %{time_total}s\n 
2.发起要求

url -w "@curl-format.txt" -o /dev/null -s "http://wordpress.com/"

在windows古板上是curl -w "@curl-format.txt" -o NUL -s "http://wordpress.com/"

旁白说明

-w "@curl-format.txt" 看护cURL运用项目化的输出文件

-o /dev/null 将要求的输出重定向到/dev/null

-s 看护cURL不体现进度条

"http://wordpress.com/" 是我们要求的URL,请运用引号困绕(尤为当你的URL包孕&查询字符串)

文本输出
time_namelookup:  0.001s       time_connect:  0.037s    time_appconnect:  0.000s   time_pretransfer:  0.037s      time_redirect:  0.000s time_starttransfer:  0.092s                    ----------         time_total:  0.164s 

输出的啥意义呢?我说明一下:

time_namelookup:DNS 域名剖析的时光,就是把http://wordpress.com 转换成ip地点的进程 time_connect:TCP 跟尾直立的时光,就是三次握手的时光 time_appconnect:SSL/SSH等基层和谈直立跟尾的时光,比喻 connect/handshake 的时光 time_pretransfer:从要求起头到照顾起头传输的时光 time_starttransfer:从要求起头到第一个字节将要传输的时光 time_total:这主要求花费的整个时光 制构成Linux/Mac快捷敕令(alise 又名)

alias curltime="curl -w \"@$HOME/.curl-format.txt\" -o /dev/null -s "

制构成Linux/Mac 独立脚本

脚本不需求零丁的包孕项目化的文本。

在可执行门路中,创立名为curltime的文件,粘贴下面内容:

#!/bin/bash  curl -w @- -o /dev/null -s "$@" <<'EOF'     time_namelookup:  %{time_namelookup}\n        time_connect:  %{time_connect}\n     time_appconnect:  %{time_appconnect}\n    time_pretransfer:  %{time_pretransfer}\n       time_redirect:  %{time_redirect}\n  time_starttransfer:  %{time_starttransfer}\n                     ----------\n          time_total:  %{time_total}\n EOF 
制构成windows快捷要领(bat批处理惩罚)

把下面的敕令写入curltime.bat:

curl -w "@%~dp0curl-format.txt" -o NUL -s %*

以上伎俩后,curltime wordpress.org就能拿到cURL的要求耗时。

cURL另有一个小技巧:仿照跟尾/传输超时。

跟尾超时时光用--connect-timeout参数来指定,数据传输的最大准许时光用-m参数来指定。

跟尾超时的话,犯错提示形如:curl: (28) connect() timed out!

数据传输的最大准许时光超时的话,犯错提示形如:

 

curl: (28) Operation timed out after 2000 milliseconds with 0 bytes received