【Linux002】cURL接口测试常用命令总结(已更新)

news2024/9/24 1:16:51

1.熟悉、梳理、总结项目研发实战中的cURL接口测试常用命令,刚好是最近研发遇到的问题。
2.欢迎点赞、关注、批评、指正,互三走起来,小手动起来!

文章目录

    • 1.`cURL`简要介绍
    • 2. `cURL`常用命令清单
    • 3. 测试命令行
    • 4. 部分效果示例(3个)

1.cURL简要介绍

  • cURL 支持广泛的协议如 HTTP、HTTPSFTP 的,满足几乎所有的网络请求需求。大多数操作系统都内置了命令行工具(Linux、Windows等),方便进行 cURL 测试。
  • cURL,广泛应用于 API 测试和网页内容检查,如获取网站数据、发起 GET/POST 调用、传输文件、自定义请求头等多种操作。

2. cURL常用命令清单

  • 在这里插入图片描述

3. 测试命令行

  • curl https://www.baidu.com/	# 不带有任何参数时,curl 发出 GET 请求
    
    curl -A	# -A参数指定客户端的用户代理标头,即User-Agent
    
    curl -b 'foo=bar' https://google.com	# -b参数用来向服务器发送 Cookie,向服务器发送一个名为foo、值为bar的 Cookie
    
    curl -c cookies.txt https://www.google.com	# 将服务器设置的 Cookie 写入一个文件
    
    curl -d 'login=emma&password=123'-X POST https://google.com/login	# 发送 POST 请求的数据体
    
    curl -d '{"login": "emma", "pass": "123"}' -H 'Content-Type: application/json' https://google.com/login	# 添加 HTTP 请求的标头是Content-Type: application/json,然后用-d参数发送 JSON 数据
    
    curl --data-urlencode 'comment=hello world' https://google.com/login	# 发送 POST 请求的数据体,区别在于会自动将发送的数据进行 URL 编码
    
    curl -e 'https://google.com?q=example' https://www.example.com	# 设置 HTTP 的标头Referer,表示请求的来源
    
    curl -H 'Referer: https://google.com?q=example' https://www.example.com	# 通过直接添加标头Referer
    
    curl -F 'file=@photo.png' https://google.com/profile	# 向服务器上传二进制文件
    
    curl -G -d 'q=kitties' -d 'count=20' https://google.com/search	# 构造 URL 的查询字符串,实际请求的 URL 为https://google.com/search?q=kitties&count=20
    
    curl -i https://www.example.com	# 输出服务器回应的标头,然后空一行,再输出网页的源码
    
    curl -I https://www.example.com	# 向服务器发出 HEAD 请求,然会将服务器返回的 HTTP 标头打印出来,--head参数等同于-I
    
    curl -k https://www.example.com	# 不会检查服务器的 SSL 证书是否正确
    
    curl -O https://www.example.com/foo/bar.html	# 将服务器回应保存成文件,并将 URL 的最后部分当作文件名,文件名为bar.html
    
    curl -u 'bob:12345' https://google.com/login	# 设置用户名为bob,密码为12345,然后将其转为 HTTP 标头Authorization: Basic Ym9iOjEyMzQ1
    
    ###############################
    ##############常用#############
    curl -H 'content-type: application/json' -X POST -d '{"accountType":"4","channel":"1","channelId":"YW_MMY","uid":"13154897541","phoneNumber":"13154897541","loginSource":"3","loginType":"1","userIp":"192.168.2.3","postTime":"14633fffffffffff81286","userAgent":"Windows NT","imei":"352600051025733","macAddress":"40:92:d4:cb:46:43","serialNumber":"123"}'	
    
    curl -X POST -H 'content-type:application/xml' -d '<?xml version="1.0" encoding="UTF-8"?><name>zhangsan</name>' http://www.baidu.com/	
    ###############################
    
    curl -H 'Content-Type:application/json' -X POST -d '{"name":"zhangsan"}' http://www.baidu.com/	
    
    	-X/--request [GET|POST|PUT|DELETE|]	# 使用指定的http method发出 http request
    	
    	-H/--header	设置请求头。例如,-H "Content-Type: application/json"会将Content-Type设置为application/json,多个header要使用多个-H
    	
    	-i/--include	# 显示response的header
    	
    	-d/--data	# 用于发送 POST 请求的数据体,默认为POST请求
    	
    	-v/--verbose	# 输出比较多的信息,查看请求详情
    	
    	-u/--user	# 使用者账号
    	
    	-b/--cookie cookie	# 文件路径 使用cookie
    	
    	--data-binary	# 发送二进制数据
    
    ###############################
    ##############常用#############
    curl -F "file=@/path/to/file" # http://example.com/upload	上传文件
    
    curl 'http://115.28.108.130:5000/api/user/getUserList/' \
    -H 'Cookie:PYSESSID=05eac6ba-2eb6-11e9-a130-00163e06e52c;session=eyIwNWVhYzZiYS0yZWI2LTExZTktYTEzMC0wMDE2M2UwNmU1MmMiOnRydWV9.D0Q51A.u9XjrAZb-plUSl01QnNPkGXJPck'	# Cookie属于header的一项,可以携带抓取到的Cookie来请求需要登录的接口
    
    curl -o filename https://apifox.com/file	# 下载文件
    
    curl -c cookies.txt https://apifox.com	# 保存和应用 Cookies
    ###############################
    

4. 部分效果示例(3个)

  • 示例【1】
    在这里插入图片描述
  • 示例【2】
  • 在这里插入图片描述
  • 示例【3】-Windows系统测试效果
  • 在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1701625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

教育新篇章:AI工具Sora引领学习新趋势

Sora——这个让人在24年初引爆AI圈的新产品&#xff0c;它究竟会如何改变我们的教育领域呢&#xff1f; 从gpt到Sora&#xff0c;从对话型的ai到游戏和短剧制作的新风口&#xff0c;我们从23年到24年一个接一个地被震惊&#xff01; Sora能够根据文本提示生成高质量的视频内容…

哈工大操作系统—多进程图像

操作系统管理cpu的时候 引出多进程 多进程为操作系统的核心 把程序存放在内存里 设置一个pc地址 发出取指的命令 cpu工作 把指令通过总线传到

前端工具vscode 提交代码git操作

一 常规操作 1. 相当于git add . 2.输入修改备注&#xff0c;点击提交 3.git push 推送&#xff08;完成这步&#xff0c;本地代码就成功推送到了远程git&#xff09; 二、切换分支 三 比较与之前版本的改动内容 四。合并分支&#xff08;分两步&#xff0c;两截图&#xff0…

图像处理之DBSCAN算法(C++)

图像处理之DBSCAN算法&#xff08;C&#xff09; 文章目录 图像处理之DBSCAN算法&#xff08;C&#xff09;前言一、DBSCAN算法原理二、代码实现总结 前言 DBSCAN聚类算法是一种无监督的数据分类方法&#xff0c;该算法不需要训练数据就可以实现对数据的分类。 一、DBSCAN算法…

最最最重要的集群参数配置(上)no.7

我希望通过两期内容把这些重要的配置讲清楚。严格来说这些配置并不单单指Kafka服务器端的配置&#xff0c;其中既有Broker端参数&#xff0c;也有主题&#xff08;后面我用我们更熟悉的Topic表示&#xff09;级别的参数、JVM端参数和操作系统级别的参数。 需要你注意的是&…

家政上门服务小程序,客商紧密连系的作用是什么

家政服务拓展速度很快&#xff0c;大小城市都有不少品牌门店&#xff0c;其涵盖项目多样化&#xff0c;使得部分年轻人和老年人长期消费需要&#xff0c;商家与客户都需要完善的路径进行长期合作。 运用【雨科】平台搭建家政上门服务预约小程序&#xff0c;客户随时预约服务、…

技术前沿:三品PLM系统引领工程变更管理新趋势

引言 在当今快速变化的制造行业&#xff0c;产品生命周期管理&#xff08;PLM&#xff09;系统已成为企业不可或缺的工具之一。PLM系统不仅帮助企业优化产品开发流程&#xff0c;还对工程变更管理&#xff08;ECM&#xff09;起着至关重要的作用。本文将探讨PLM系统在工程变更…

高职高校实训教学实验室管理系统一体化

盛元广通高职高校实训教学实验室管理系统一体化是确保实验教学有序进行的关键环节。通过更加科学 、有效、合理的管理&#xff0c;明确排课原则、收集课程信息、评估实验室资源、制定排课计划、冲突检测与调整、发布排课信息、调课管理以及数据统计与分析等措施。实现了实验室资…

Go语言

文章目录 Go语言特点应用领域Go语言和Java语言的对比JavaGo 总结 Go语言安装配置环境变量Hello World Go语言 Go语言全称Golanguage&#xff0c;Go&#xff08;又称 Golang&#xff09;是 Google 的 Robert Griesemer&#xff0c;Rob Pike 及 Ken Thompson 开发的一种静态强类…

数组Array

数组的基本用法 概念 数组是有序元素序列。如果将若干个数据类型相同的变量的集合命名&#xff0c;那么该命名就是数组名。数组元素的重点是类型相同并且连续在内存中存放的数据。 定义格式 存储类型 数据类型 数组名 [ 元素个数 ] &#xff1b; 例如&#xff1a; &#x…

AHB与APB总线介绍

1 什么是AHB、APB? AHB&#xff08;Advanced High-performance Bus&#xff09;高速总线&#xff0c;接高速master&#xff0c;APB&#xff08;Advanced Peripheral Bus&#xff09;外设总线&#xff0c;用来接低速slave&#xff0c;一个master可以有多个slave&#xff0c;AH…

若依微服务实现分布式事务

一、基本介绍 1、什么是分布式事务 指一次大的操作由不同的小操作组成的&#xff0c;这些小的操作分布在不同的服务器上&#xff0c;分布式事务需要保证这些小操作要么全部成功&#xff0c;要么全部失败。从本质上来说&#xff0c;分布式事务就是为了保证不同数据库的数据一致…

2.1 数据类型-常量-变量(整型-浮点-字符)

目录 1 数据类型 1.1 关键字 2 常量 3 变量 3.1 命名规则 4 整形数据 4.1 符号常量 4.2 整型变量 5 浮点型数据 5.1 浮点型常量 5.2 浮点型变量 6 字符型数据 6.1 字符型常量 转义字符 6.2 字符数据在内存中的存储形式及其使用方法 6.3 ASCII码表 7 字符串型常…

homebrew安装mysql的一些问题

本文目录 一、Homebrew镜像安装二、mac安装mysql2.1、修改mysql密码 本文基于mac环境下进行的安装 一、Homebrew镜像安装 Homebrew国内如何自动安装&#xff0c;运行命令/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 会…

2024年,游戏行业还值得进入吗?

来自知乎问题“2024年&#xff0c;游戏行业还值得进入吗&#xff1f;”的回答。 ——原问题描述&#xff1a;从超小厂执行策划做起&#xff0c;未来有前途吗&#xff1f; 展望2024年&#xff0c;国内外的游戏市场环境或将变得更加复杂&#xff0c;曾经那个水大鱼大的时代过去了…

ArduPilot开源飞控之MAVProxy深入研读系列 - 2蜂群链路

ArduPilot开源飞控之MAVProxy深入研读系列 - 2蜂群链路 1. 源由2. 蜂群链路2.1 拓扑结构2.2 设备标识2.3 命令列表 3. 蜂群应用4. 总结技术进步未来挑战 5. 参考资料 1. 源由 MAVProxy的一个关键功能是它能够通过UDP将来自无人机的消息转发到网络上的多个其他设备上的地面站软…

AI绘画图生图有什么用?

随着AI渗透到我们生活中的各个角落&#xff0c;AI绘画图生图的出现&#xff0c;更是在艺术领域引起了广泛的关注和讨论。那么&#xff0c;AI绘画图生图究竟有什么作用呢? 首先&#xff0c;AI绘画图生图能够极大地提高创作效率。传统的绘画过程需要艺术家们花费大量的时间和精力…

uni-app实现页面之间的跳转传参(八)

界面之间的参数传递在 开发中经常会用到,这节主要将一下uni-app开发应用是的传参情况。如下图所示,我的一级界面将点检分成三类:日点检、周点检和年保养;在点击相应的会导航到相应的功能。 在uni-app中常用的方法有uni.navigateTo(OBJECT)、uni.redirectTo(OBJECT);简单的…

一文带你学会如何部署个人博客到云服务器,并进行域名备案与解析!

哈喽&#xff0c;大家好呀&#xff01;这里是码农后端。之前我给大家介绍了如何快速注册一个自己的域名&#xff0c;并创建一台自己的阿里云ECS云服务器。本篇将介绍如何将个人博客部署到云服务器&#xff0c;并进行域名备案与解析。 1、域名备案 注册了域名并购买了云服务器之…

牛客循环5.27

1006 错误代码 不知道原因&#xff0c;有大佬解答一下吗 ac代码 1007 错误代码 ac代码