Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >curl 模拟 GET\POST 请求,以及 curl post 上传文件「建议收藏」

curl 模拟 GET\POST 请求,以及 curl post 上传文件「建议收藏」

作者头像
全栈程序员站长
发布于 2022-11-02 09:03:01
发布于 2022-11-02 09:03:01
3.9K00
代码可运行
举报
运行总次数:0
代码可运行

curl 模拟 GET\POST 请求,以及 curl post 上传文件

一般情况下,我们调试数据接口,都会使用一个 postman 的工具,但是这个工具还是有点大了。事实上,我们在调试一些小功能的时候,完全没有必要使用它。在命令行中,我们使用 curl 这个工具,完全可以满足我们轻量的调试要求。

下面,我们来简单的说一下,curl 的一些常见使用方法:

curl GET 请求

curl命令 + 请求接口的地址。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl localhost:9999/api/daizhige/article

如上,我们就可以请求到我们的数据了,如果想看到详细的请求信息,我们可以加上 -v 参数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl localhost:9999/api/daizhige/article -v

操作结果如下图所示:

curl POST 请求

我们可以用 -X POST 来申明我们的请求方法,用 -d 参数,来传送我们的参数。

所以,我们可以用 -X PUT-X DELETE 来指定另外的请求方法。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl localhost:9999/api/daizhige/article -X POST -d "title=comewords&content=articleContent"

如上,这就是一个普通的 post 请求。

但是,一般我们的接口都是 json 格式的,这也没有问题。我们可以用 -H 参数来申明请求的 header

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl localhost:9999/api/daizhige/article -X POST -H "Content-Type:application/json" -d '{"title":"comewords","content":"articleContent"}'

so, 我们可以用 -H 来设置更多的 header 比如,用户的 token 之类的。

同样,我们可以用 -v 来查看详情。

curl POST 上传文件

上面的两种请求,都是只传输字符串,我们在测试上传接口的时候,会要求传输文件,其实这个对于 curl 来说,也是小菜一碟。

我们用 -F "file=@__FILE_PATH__" 的请示,传输文件即可。命令如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl localhost:8000/api/v1/upimg -F "file=@/Users/fungleo/Downloads/401.png" -H "token: 222" -v

执行结果如下图所示:

更多 curl 的使用方法,以及参数说明,可以在系统中输入 man curl 来进行查看。或者,点击 curl man 查看网页版的介绍。

所以,我们可以用 man 命令名称 来查看更多的工具的介绍。当然,一些非主流的命令行工具,应该是没有相关的介绍的。

可能你会感觉用这些命令才进行操作,感觉破烦。但是,当你仅仅需要请求一个接口,进行一个轻量的操作的时候,是顺手在终端中输入一个命令来得方便,还是打开一个重型的图形工具来得方便呢?

命令行是可以保存历史记录的,我们使用 ctrl+r 快捷键可以进行历史命令搜索,这样,我们可以非常方便的重复进行命令调试。

我现在已经养成了在终端中写代码,跑代码,以及调试代码的习惯,我感觉这样非常方便。

当然,我的想法不一定是正确的,但是依然希望,能够对看官有所帮助。

本文由 FungLeo 原创,允许转载,但转载必须保留首发链接。


2020年04月27日补充

我没想到这篇博文有这么大的阅读量。文中所表述的 curl 的使用虽然关键点都已经涉及到了,但是如何更加优雅的使用,并没有涉及。如果你对这部分内容感兴趣,可以阅读我的这篇博文 《linux 或 mac 命令行更优雅的使用 curl 命令,以及命令行常用的快捷键说明》,相信各位看官在看过这篇文章之后,对于 curl 命令的使用,会更加的舒服、优雅哦!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/180668.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月18日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
linux 或 mac 命令行更优雅的使用 curl 命令,以及命令行常用的快捷键说明
最近看了一下我的博客的访问统计,作为一个前端博主,没有想到我阅读量最高的一篇博文居然是介绍如何在命令行使用 curl 命令的文章《curl 模拟 GET\POST 请求,以及 curl post 上传文件》。
FungLeo
2020/04/30
6.7K0
linux 或 mac 命令行更优雅的使用 curl 命令,以及命令行常用的快捷键说明
linux使用 curl 命令
一般情况下,我们调试数据接口,都会使用一个 postman 的工具。在命令行中,我们使用 curl 这个工具。
chenchenchen
2020/07/01
7.5K0
linux使用 curl 命令
curl -v 命令大全详解:网络调试与数据传输的神器
在网络开发、调试和运维过程中,curl 是一个不可或缺的命令行工具。其强大的功能帮助开发者与服务器交互、测试API、调试网络问题。而其中的 -v 参数更是解析通信细节的利器。本篇博客将从基础概念、常见用法到进阶技巧,全面解读 curl -v 的功能,帮助你从小白成长为网络调试高手。
默 语
2024/11/22
3520
Python3 初学实践案例(14)打造一个私人图床服务器
版权声明:本文为 FengCms FungLeo 原创文章,允许转载,但转载必须注明出处并附带首发链接 https://blog.csdn.net/FungLeo/article/details/80690367
FungLeo
2019/05/26
4.1K1
curl 命令-接口测试
在linux/Unix 为代表的os上, 对后端进行测试, 模拟连接请求都会书写脚本
louiezhou001
2019/07/25
2.1K0
curl 命令-接口测试
深入解析 curl:掌握命令行的网络传输利器
当我们使用 curl 进行网络请求时,了解如何有效地使用参数是非常重要的。curl 提供了许多参数,用于控制请求的行为和配置。在这篇博客文章中,我们将详细解释一些常用的 curl 参数,帮助你更好地理解如何利用这个强大的工具。
修己xj
2023/09/05
3330
深入解析 curl:掌握命令行的网络传输利器
Linux curl 命令模拟 POST/GET 请求
curl 支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。
阳光岛主
2019/02/18
5.9K0
快来看,敖丙还不会curl
curl应该还算是一个比较常见的东西吧?比如说,我们在学习Elasticsearch的时候去看官方文档,就可以看到curl的踪影,有的时候看别人的写的文档也会看到curl的踪影。
Java3y
2020/06/28
6420
快来看,敖丙还不会curl
curl 命令妙用
curl是基于URL语法在命令行方式下工作的文件传输工具,它支持FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP等协议。curl支持HTTPS认证,并且支持HTTP的POST,PUT等方法,FTP上传,kerberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,通过http代理服务器上传文件到FTP服务器等等,功能十分强大。本文主要分享一些常用的场景:
Wu_Candy
2022/07/04
1.4K0
Linux curl命令最全详解
curl是一个非常实用的、用来与服务器之间传输数据的工具;支持的协议包括 (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP),curl设计为无用户交互下完成工作;curl提供了一大堆非常有用的功能,包括代理访问、用户认证、ftp上传下载、HTTP POST、SSL连接、cookie支持、断点续传…。
全栈程序员站长
2022/09/19
4.3K0
Linux curl命令最全详解
Linux学习笔记之curl模拟get/post/delete/put请求
很多条件下,需要在命令行操作api,写脚本的情况另算,此处需要linux自带的curl命令模仿get/post/delete/put请求
Jetpropelledsnake21
2020/12/03
1.9K0
01 . Go框架之Gin框架从入门到熟悉(路由和上传文件)
路由方法有GET, POST, PUT, PATCH, DELETE 和 OPTIONS,还有Any,可匹配以上任意类型的请求
iginkgo18
2020/10/30
1.5K0
【Linux系列】利用 CURL 发送 POST 请求
在现代的网络通信中,HTTP 协议扮演着至关重要的角色。其中,POST 请求是 HTTP 协议中的一种方法,用于向服务器提交数据进行处理。在 Linux 系统中,curl命令是一个强大的工具,它允许用户发送各种类型的 HTTP 请求,包括 POST 请求。
kwan的解忧杂货铺
2024/11/08
6360
3分钟短文 | Linux 使用curl发起post请求的4个常用方式
cURL是一种命令行实用程序,用于使用一种受支持的协议,从远程服务器传输数据,或将数据传输到远程服务器。默认情况下,已安装在macOS和大多数Linux发行版上。
程序员小助手
2020/07/28
11.1K0
3分钟短文 | Linux 使用curl发起post请求的4个常用方式
curl命令调试接口「建议收藏」
大家好,很快就过年了,在这里先祝各位新年快乐,阖家欢乐!现在我们切入主题,在我们平时开发接口完成后,需要上线联调接口,而接口往往和业务逻辑精密联系,想要调试接口,就需要将业务测一遍,那么有没有更好的办法使得调试更简单?
全栈程序员站长
2022/08/01
2.1K0
一文学会curl和curl详解
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。
星哥玩云
2022/05/28
5.2K0
一文学会curl和curl详解
curl命令行工具调试http接口使用小结
无论是微信,支付宝还是银联,都有https接口api, 工作中有时候需要调试下http接口。
杨永贞
2022/01/07
1.1K0
可能是东半球最好的 Curl 学习指南,强烈建议收藏!
curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。
iMike
2019/09/10
1.5K0
可能是东半球最好的 Curl 学习指南,强烈建议收藏!
curl命令行发送POST!GET请求
post 请求默认是:Content-Type:application/x-www-form-urlencoded
leader755
2022/10/04
4.1K0
还在用 postman?手把手教你用 curl 提高工作效率
curl 是 Linux 系统上一款网络工具,它的首字母 c 代表的是 client,表示它是客户端程序。通过 URL 方式,可以实现客户端与服务器之间传递数据。
用户3105362
2021/11/12
1.4K0
相关推荐
linux 或 mac 命令行更优雅的使用 curl 命令,以及命令行常用的快捷键说明
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验