curl命令的使用

article/2025/10/27 13:25:58

curl命令是一个模拟浏览器请求的命令,当你去curl一个网址的时候,会返回给你网站的html代码,因此可以代替浏览器去发送请求,适用于那些纯命令行界面的linux,给您更爽的体验,话不多说,来看看curl命令是怎么用的。

参数介绍

1、[- o]

语法格式:curl -o [filename] url

举例:curl -o /tmp/sina.txt www.sina.com

说明:访问www.sina.com这个网站,并且返回的结果保存在/tmp/sina.txt这个文件中,类似于输出重定向 curl www.sina.com > /tmp/sina.com

结果:

在这里插入图片描述

2、 [- i ]

语法格式:curl -i url

举例:curl -i www.sina.com

说明:展示http响应报文

结果

在这里插入图片描述

3、 [- I]

语法格式:curl -I url

举例:curl -I www.sina.com

说明:仅展示响应的响应行和响应头,不展示响应体,也就是不会展示Html代码

结果

在这里插入图片描述

4、[- v]

语法格式:curl -v url

举例:curl -v www.sina.com

说明:得到HTTP具体的请求以及响应过程,并返回html代码以及详情

结果:由于这段相应结果过长,我就不上图了,但是返回的结果完全描述了http请求以及响应的过程,后续我会详细介绍http的机制,咱们先来简单说一下,首先客户端(也就是咱们的电脑)先和服务器进行连接,然后发出Request请求,服务器处理完请求,返回给客户端响应(Response)。如果采用的是Http1.0,那么就会立即断开连接,如果采用的是http1.1,那么就不会立即断开连接,而是会过一段时间才断开。大家看一下自己实验返回的结果,是不是和我说的顺序对应上了。

5、[- L]

语法格式:curl -L url

举例:curl -L www.sina.com

说明:有些网页是带有自动跳转的功能的,使用-L选项就是开启自动跳转的这个功能

结果:返回html代码

6、[–trace filename]

语法格式:curl --trace filename www.sina.com

举例:curl --trace detail.txt www.sina.com

说明:返回比-v还要详细的客户端-服务器交互信息,并存储到文件中

结果:只截取了部分

在这里插入图片描述

7、GET和POST请求

get请求其实就比较容易一些,只需在输入的url后面拼接上参数。

例如:curl www.baidu.com?wd=xxxxxxx

但是post请求就麻烦了,需要手动去指明参数。

例如:curl -X POST -d “name=xxx&sex=男” www.baidu.com

可以使用-d,也可以使用- -data

8、HTTP的动作

http的动作共有八种:GET POST HEAD DELETE PUT OPTIONS TRACE CONNECT

想要指定使用哪种动作,需要指明,默认是GET

举例:curl POST www.baidu.com 或 curl -X POST www.baidu.com

9、请求时添加请求头

我们在模拟表单提交时,难免会添加一些附带的请求头,如果没有这些请求头,可能会被服务器驳回这次请求,那么,添加请求头就可以使用–head 或者-H

例如:curl --head “accept-encoding=gzip, deflate, br”

​ curl -H “accetp-encoding=gzip, deflate, br”

10、携带cookie访问

cookie是存储在我们客户端的文件,当我们访问过某些网站之后,如果在你的电脑上存储了一些cookie,那么当你再次访问这个网站时,会携带上这些cookie,作为你身份的标识,可以使用- -cookie添加携带的cookie

例如:curl --cookie “name=value” www.baidu.com

11、修改userAgent

userAgent是服务器识别我们访问设备的标识,例如,当你用手机进行访问的时候,就给你返回适配手机的网页,当你用电脑访问时,就返回适配电脑的网页。我们可以修改user-agent

举例:curl --user-agent “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36”


http://chatgpt.dhexx.cn/article/iqibdXUG.shtml

相关文章

curl命令的常用操作

curl是非常实用的命令行工具,用来与服务器之间传输数据。它的命令行参数多达几十种。 在Linux环境中使用curl命令可以进行接口测试。利用curl对http协议发送Get/Post/Delete/Put请求,同时还可以携带header来满足接口的特定需求。 curl命令的语法 curl[options] [U…

windos下 curl命令使用

什么是curl命令? curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。 如何在windows下使用curl命令? 打开dos窗口(winR 输入cmd 打开&#x…

curl命令进行接口测试

有时候会遇到一些需求:后端先写功能接口,前端后面再做,这样在灰度发版的时候怎么验证生产接口功能? 1、接口自动化 2、postman直接调用生产接口 3、curl命令测试接口 今天重点是方法3 一、curl命令的介绍: Window…

curl命令的使用操作,你知道多少?

curl是非常实用的命令行工具,用来与服务器之间传输数据。它的命令行参数多达几十种。 在Linux环境中使用curl命令可以进行接口测试。利用curl对http协议发送Get/Post/Delete/Put请求,同时还可以携带header来满足接口的特定需求。 01:curl命令的语法 c…

curl 命令详解

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

强大的curl命令的介绍和一般用法

curl,全称CommandLine URL 或 CommandLine Uniform Resource Locator,顾名思义,curl命令是在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输。 这个命令行工具现在多用于Unix和Linux操作系统,是一个开源…

linux之curl命令

curl命令 是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cook…

curl命令介绍与使用

curl,全称CommandLine URL 或 CommandLine Uniform Resource Locator,顾名思义,curl命令是在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输。 这个命令行工具现在多用于Unix和Linux操作系统,是一个开源…

Linux系统中curl命令用法详解

在Linux系统中curl是一个利用URL规则在命令行下工作的文件传输工具,是一款强大的http命令行工具。它支持文件的上传和下载,是综合传输工具。 curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client&#xff09…

强大的curl命令的介绍和一般用法(*)

curl,全称CommandLine URL 或 CommandLine Uniform Resource Locator,顾名思义,curl命令是在命令行方式下工作,利用URL的语法进行数据的传输或者文件的传输。(可以使用curl命令执行url接口) 这个命令行工具…

CURL命令详解

curl -v http://ip:port/service/name/op?param11\&param20\&param3"\[\{\"value\":1,\"value\":1\}\]" 能正常发送,但服务器端接收不到参数,原因大概是service只接受post请求 curl -v --globoff http://ip:…

常见的curl命令大全

1.发送 HTTP 请求:使用 curl 发送 HTTP 请求,例如: curl http://example.com/2.保存下载的文件:使用 -O 或 -o 参数可以将下载的文件保存到本地,例如 curl -O http://example.com/file.zip curl -o localfile.txt http://example.com/remote.txt3.设置 HTTP 请求头:使用…

curl命令

目录 一、最常用的curl命令 1、发送GET请求 2、发送POST请求 3、发送json格式请求: 二、curl命令语法与curl命令参数详解 1、curl命令语法 2、curl命令参数详解 三、Linux curl命令退出码 四、常见用法 1、下载(option:-o或者option:-O) 2、上传文件(opti…

Linux curl命令最全详解

目录 一、最常用的curl命令 1、发送GET请求 2、发送POST请求 3、发送json格式请求: 二、curl命令语法与curl命令参数详解 1、curl命令语法 2、curl命令参数详解 三、Linux curl命令退出码 四、常见用法 1、下载(option:-o或者option:-O) 2、上传文件(opti…

QT多线程实战

文章目录 需求的提出多线程线程间通信终止多线程 本文源码: QT多线程实战 需求的提出 窗口本身就是一个死循环,在这样一个死循环中执行任何耗时的操作,都会导致程序崩溃。所以多线程对于窗口编程而言是必要的。 例如,在窗口中拖…

Qt多线程之死锁

目录 一、造成死锁的原因 现象分析 二、死锁的概念和发生条件 三、死锁的避免 四、避免死锁的示例代码 一、造成死锁的原因 一般性原则,每个临界资源都需要一个线程锁来进行保护,假设有多个线程锁该怎么设计程序呢?先来看以下的一个示例…

QT多线程网络通信

QT多线程网络通信 使用QT提供的类进行基于TCP的套接字通信需要用到两个类: 1、QTcpServer 服务器类,用于监听客户端连接以及和客户端建立连接 2、QTcpSocket 通信的套接字类,客户端、服务器端都需要使用 ​ 这两个套接字通信类都属于网络…

QT 多线程应用

QT多线程的实现有两种方法,一种是继承QThread的多线程使用方法,另外一种是使用QObject实现多线的方法。传统的方式是继承QTread,但是这种方式比较的容易出错,QT官方推荐使用的是第二种方式。这里介绍这两种方式的最简单的一种创建…

Qt 多线程(QThread)

Qt 多线程(QThread) 一.理解QThread 关于QThread,参考qt助手中的解析 Detailed Description A QThread object manages one thread of control within the program. QThreads begin executing in run(). By default, run() starts the eve…

QT 多线程的实现方法以及GUI线程与其他线程间的通信

GUI线程 Qt应用程序exec后就会生成一个线程,这个线程就是主线程,在GUI程序中也称为GUI线程。主线程也是唯一允许创建QApplication或QCoreAppliation对象,比并且可以对创建的对象调用exec()的线程,从而进入事件循环。 在只有主线…