200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > Linux中使用curl命令发送带参数的get请求和post请求

Linux中使用curl命令发送带参数的get请求和post请求

时间:2022-06-14 20:10:27

相关推荐

Linux中使用curl命令发送带参数的get请求和post请求

1.curl与wget 命令的区别

相似之处:wget 和 cURL 都可以下载内容,都可以向互联网发送请求并返回请求项,也可以进行 HTTP POST 请求,它们都是命令行工具,可以设计成可脚本化应用到bash脚本中。

wget特点:简单直接、可直接下载程序、支持递归下载、使用方便。

curl特点:多功能工具、支持多种网络协议、安全、支持gzip 压缩技术。

选择使用 curl还是使用 wget?

根据实际情况而定。如果想快速下载并且没有担心参数标识的需求,使用轻便有效的 wget。如果你想做一些更复杂的使用,直觉告诉你,你应该选择 curl。

curl可以理解为命令行网页浏览器,能处理好多事情,并且支持多种网络协议,可交互访问在线内容。不同的是curlL 不会渲染接收到的相应信息。

这里主要说明下curl命令发送带参数的get和post请求如何使用。

2.curl命令Get请求

语法:curl命令 + 请求接口的地址

# curl

如果需要,可根据情况进行重定向curl >page.hrml

注意:

问题:如果请求的URL含有&转义字符,会提示参数不对,报错?

#crulhttp://172.16.134.9:1153/mp_mcss/vcn-image.do?mode=2&fileUuid=92dc1c25980d4a1c9b59d928a092e478> 2.jpg

原因:由于URL中&不转义,curl请求时会分开访问。

解决办法:

1) URL连接上加上双引号

#crul "http://172.16.134.9:1153/mp_mcss/vcn-image.do?mode=2&fileUuid=92dc1c25980d4a1c9b59d928a092e478"> 2.jpg

2) URL连接&前加\ 就可以取消转义

可参考这篇博客

3.curl命令Post请求

举例:带header和body的POST请求

# curl -v -XPOST -H "Content-Type:application/json" http://172.24.7.63:36963/VIID/MotorVehicles -d ' {"DataType" : "Face"} '

说明:

-v 详细的请求信息

-XPOST指定请求凡是为POST请求

-H指定请求头部

-d指定传送数据为json格式

注意:

1)如果传送json数据过大,由于数据长度限制会出现curl失败?

解决方案:将json写成文件形式报错,例如data.json

# curl -v -XPOST -H "Content-Type:application/json" http://172.24.7.63:36963/VIID/MotorVehicles -d @data.json

至于,DELETE和PUT请求可参考网上资源。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。