curl 命令的学习笔记
curl 命令的学习笔记
curl 官网:https://curl.haxx.se/
curl 全称 CommmandLine URL 或 CommandLine Uniform Resource Locator,是用于从服务器传输传输数据或向服务器传输数据的工具。它支持以下协议:DICT、FILE、FTP、FTPS、GOPHER、GOPHERS、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、MQTT、POP3、POP3S、RTMP、RTMPS、RTSP、SCP、SFTP、SMB、SMBS、SMTP、SMTPS、TELNET或TFTP。该命令旨在无需用户交互即可工作。
curl 提供了大量有用的技巧,如代理支持、用户身份验证、FTP上传、HTTP发布、SSL连接、cookie、文件传输恢复等。
1. 常见用法:
1、curl url
作用:获取页面内容或接口响应
eg:
curl www.baidu.com
运行后,返回的是一个百度主页的HTML代码。
curl 的用法跟一般的linux/Unix 命令无异,一般语法如下。
crul -[选项] [URL]
2、curl -I url
作用:获取请求页面或接口的请求头信息
eg:
curl -I www.baidu,com
运行如下:
HTTP/1.0 403 Forbidden
Server: Lusca/LUSCA_HEAD-r14809
Date: Fri, 18 Mar 2022 05:29:55 GMT
Content-Type: text/html
Content-Length: 2617
X-Squid-Error: ERR_ACCESS_DENIED 0
X-Cache: MISS from HexinFirewall
Connection: close
3、curl -d “params” url
作用:使用-d发送带参数的请求(默认是Post方式提交)
curl -d "user=xiaoming&age=18" www.baidu.com
4、curl -X选项 url
-X选项,指定请求方式,我们可以有多种请求方式,最常见的是GET和POST,但请求的方式,包括GET、PUT、POST、DELETE四种方式。
这四种请求方式,对于在做RESTFUL接口开发和测试的人来说,非常方柏霓。curl 的用法如下:
curl -XGET www.baidu.com
curl -XPOST www.baidu.com
curl -XDELETE www.baidu.com
curl -XPUT www.baidu.com
5、curl -H Head_infos
作用:自定义Header 头信息
6、curl -L url
作用:跟踪连接url重定向,有些页面或接口被重定向,直接使用 curl url 会返回
7、curl -O url
作用:下载指定资源文件到当前目录中
8、curl -v url
-v 选项,–verbose,指定该选项后,可以跟踪URL的连接信息。可以根据这个选项看看curl是怎么工作的。
eg:
curl -v www.baidu.com
加上 -v 后返回的信息,包括很多重要信息:
- 域名解析过程:我们可以得到真正连接的IP地址和端口
- 请求头信息:其中有使用的协议(HTTP),协议的请求方式(GET)
- 回应头信息:包含状态码,内容格式(text/html),内容长度等。
9、curl -i url
-i 选项,–include,把回应的头信息包含在内,跟-v 大同小异,是-v的子集。
eg:
curl -i www.baidu.com
10、curl -I url
-I (大写i)选项,–head,只显示返回的头信息,与-v大同小异,是-v的子集。
11、curl -u msg url
-u 选项,带用户验证的连接,可以访问或获取带用户验证的URL
curl -u username:password www.baidu.com
curl -u username www.baidu.com
12、curl -h
curl -h命令是一条帮助命令,可以获取curl的使用大全。
curl 命令的学习笔记相关推荐
- linux三剑客-sed命令的学习笔记
本文为在B站上学习linux命令的学习笔记,视频出处为https://www.bilibili.com/video/BV1244y1e73a?p=23&spm_id_from=pageDriv ...
- 吃烧烤之命令模式学习笔记[C++版]
#pragma once /******************************** * * 命令模式应用:烤羊肉串二 * ********************************/ ...
- 吃烧烤之命令模式学习笔记[C++版] 1
/************************************************************************ * 命令模式学习笔记[C++] * Author: ...
- ifconfig没有命令 kali_kali学习笔记之——端口扫描工具
之前的kali学习笔记分别介绍了kali的网卡问题和隐藏ssid的扫描 蟪蛄语春秋:kali学习笔记之--wi read():Network is down问题zhuanlan.zhihu.com ...
- linux解挂文件磁盘的命令,Linux学习笔记(4)磁盘分区(fdisk)、挂载与文件系统命令...
Linux学习笔记(4)磁盘分区(fdisk).挂载与文件系统命令 1.磁盘分区是怎么表示的? 1.1 对于IDE接口,第一主盘为hda,第1从盘为hdb,第1从盘的第1个分区为hdb1 1.2 对于 ...
- Git命令配置学习笔记
Git 笔记 Git是分布式版本控制系统 集中式VS分布式: 集中式版本控制系统,版本库集中存放在中央服务器,必须要联网才能工作,没有历史版本库. 分布式版本控制系统,版本控制系统没有"中央 ...
- [整理]ADB命令行学习笔记
global driver # 元素定位 driver.find_element_by_id("id") # id定位 driver.find_element_by_name(&q ...
- VMWare ESX命令行学习笔记
原文地址 http://blog.chinaunix.net/u/739/showart.php?id=1286954 暂记于此,待用. 近来学习了VMWARE ESX下的相关命令,现记录下一些主要的 ...
- 远程仓库与 fetch 命令——Git 学习笔记 20
远程仓库是指托管在因特网或其他网络(比如局域网)中的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则对你可读可写. 与他人协作涉及管理远程仓库以及根据需要推送或拉取数据. 查看远程仓库 ...
最新文章
- POJ2796 Feel Good(单调栈)
- [转] DataSet的的几种遍历
- Silverlight 鼠标与键盘事件注意点
- Java ArrayList 为什么要实现 RandomAccess 接口?
- 河北省国家电网计算机专业,河北省国家电网计算机类题目库.doc
- 剩余大学时光里要做的事
- Python+pywin32批量转换Word文件为PDF文件
- 选择编程语言前需要知道的事
- 发那科机器人接线电源_电源开关上的L1和L2是不是火线和零线?
- moodle环境安装linux,Linux下安装Moodle
- MATLAB 转置与共轭转置、在legend中输入数字、求频偏的小收获
- win10系统计算机如何分盘,windows10怎么分盘
- pinia报错, getActivePinia was called with no active Pinia. Did you forget to install pinia?
- CSAPP拆弹实验/炸弹实验
- Learn to say “fuck you” to the world every once in a while
- 淘宝用户行为分析(一):点击—加购—收藏—购买
- IME输入法编程:第一章 Windows9x系统下汉字输入法的基本原理
- Java每次从list中拿取一百条数据
- 我发的文章是怎么到你手机上的?计算机网络基础(一)
- javaAPI 集合