curl命令详解

逃离我推掉我的手 2023-08-17 17:17 184阅读 0赞

curl用于和服务端交互,而不用经过网页界面认为操作,常用于判定指定url的服务是否能正常调用。

curl的基本用法:

1.判定指定url连通性,curl -v https://www.baidu.com

![Image 1][]

2.调用接口,curl -H “Content-Type:application/json” -X POST -d ‘{“operator”: “killianxu”,”place_type”:”tt”}‘ http://www.killianxu.cn/api/get_place_list

![Image 1][]

可在网页 https://curl.trillworks.com/,将curl调用转换为python代码

![Image 1][]

3.判定https的url是否连通,并获取其它交互的详细信息,包括tcp连接延时,SSL握手延时等,curl -m 2 -k -sS -v -w ‘%{time_connect}\n%{time_total}\n%{http_code}\n%{time_appconnect}\n’ https://118.24.225.168:22 -H Host: 1557367664.cq.1253702919.clb.myqcloud.com --trace-time

![Image 1][]

-m,—max-time 整个交互完成的超时时间。

-k ,—insecure,建立不安全连接。用于https协议,SSL握手过程,从服务端获取的证书,不进行验证。

-sS,请求发生错误时,显示错误信息,比如这里的curl: (28) Operation timed out after 2001 milliseconds with 0 out of -1 bytes received。

-v显示请求的详细过程,用于调试的目的,如果不加-v,显示如下:

![Image 1][]

-w,—write-out 定义请求完成时要显示的信息。这里的format为’%{time_connect}\n%{time_total}\n%{http_code}\n%{time_appconnect}\n’,time_connect为tcp连接时间,time_appconnect为SSL握手时间,time_total是总时间,http_code是状态码(000有很多原因,包括tcp连接延时、ssl握手延时、操作超时等,这里可通过输出的错误信息查看原因),更多可显示的其他信息可man curl查看。

-H,—header

定义头部信息

--trace-time,显示curl过程的时间戳,用于查看时间耗在哪步。

当进行大量curl请求时,会出现SSL握手延时整体变大的情况,跟curl版本有关系。

![Image 1][]

NSS版本的curl SSL握手第一步时间比较长,可能和实现方式有关,可换为OpenSSL版本。

OpenSS版本curl安装如下(可安装在任意路径,不会覆盖已有版本):

1.wget https://github.com/curl/curl/releases/download/curl-7_65_3/curl-7.65.3.tar.bz2

2.tar -jxvf curl-7.65.3.tar.bz2

  1. ./configure

4.make

转载于:https://www.cnblogs.com/killianxu/p/11396373.html

[Image 1]:

发表评论

表情:
评论列表 (有 0 条评论,184人围观)

还没有评论,来说两句吧...

相关阅读

    相关 curl 命令详解

    curl 是一种命令行工具,作用是发出网络请求,然后获取数据,显示在"标准输出"(stdout)上面。它支持多种协议,下面列举其常用功能。 一、查看网页源码 直接在 c

    相关 Linux curl命令详解

    命令:curl 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但

    相关 Linux curl命令详解

    命令:curl 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但

    相关 curl命令详解

    在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为

    相关 Linux curl命令详解

    在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为