linux在线更新curl,Linux:curl
curl命令用来做HTTP协议的客户端,可以通过命令参数生成各种请求,非常强大。
1. GET
默认情况下下curl执行的是GET操作,所以可以当做wget使用如
$ curl https://www.baidu.com
现在百度使用了https协议,但是这个结果还是有点奇怪的,使用https地址却又想让你去访问http。但是浏览器直接输入https地址,观察网络情况却没有这个过程。所以可能是百度根据请求头的User-Agent做了一些判断。那么可以在命令中使用-A参数来指定User-Agent(chrome的UA字串)如:
$ curl https://www.baidu.com -A 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36'
此时就会有百度首页的内容返回。
2. POST/PUT
如果不是进行GET请求需要在命令中另外指定请求类型使用-X参数如:
-XPUT-XPOST
PUT和POST请求都是可以带请求体的,他们通过-d指定,另外使用-v参数可以打开verbose模式观察http协议通信情况:
$ curl -XPOST http://www.baidu.com/ -d 'a=1&p=1' -v
* Hostname was NOT found inDNS cache* Trying 115.239.211.112...* Connected to www.baidu.com (115.239.211.112) port 80 (#0)> POST / HTTP/1.1
> User-Agent: curl/7.35.0
>Host: www.baidu.com> Accept: */*> Content-Length: 7
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 7 out of 7 bytes
< HTTP/1.1 302 Moved Temporarily
< Date: Wed, 03 Jun 2015 02:30:05 GMT
< Content-Type: text/html
< Content-Length: 215
< Connection: Keep-Alive
< Location:http://www.baidu.com/search/error.html* Server BWS/1.1 is not blacklisted
< Server: BWS/1.1
< X-UA-Compatible: IE=Edge,chrome=1
< BDPAGETYPE: 3
< Set-Cookie: BDSVRTM=0; path=/
<
302 Found
302 Found
pr-nginx_1-0-224_BRANCH Branch
Time : Thu May 28 14:42:58 CST 2015
* Connection #0 to host www.baidu.com left intact
">"开头的行是本机发出的信息,"
上面向百度POST了一个请求,当然是乱来的,所以对方响应了一个302把目标指向一个错误页面。还可以发现POST请求默认使用的Content-Type是
application/x-www-form-urlencoded
如果我们使用POST来测试一些RESTful接口的话,必须手工指定Content-Type为application/json(假设一般接口都是用json形式接收参数),否则服务端接收到的数据会含有%开头的编码,可以使用-H来指定Content-Type这个HTTP头
curl -XPOST 'http://ip:port/api/resource' -d '{"name":"hi"}' -H 'Content-Type: application/json'
linux在线更新curl,Linux:curl相关推荐
- curl上传文件linux,在Linux中如何使用curl从一个服务器流式传输文件到另一个服务器(有限的服务器资源)...
我的API服务器具有非常有限的磁盘空间(500MB)和内存(1GB).它获得的API调用之一是接收文件.消费者调用API并传递要下载的URL. 我的服务器的"目标"是将此文件上传到 ...
- nginx curl linux,linux nginx 下通过curl url方式,符以后的参数无效
linux nginx 下通过curl url方式,&符以后的参数无效 nginx转发get请求丢失参数 ngixn转发,接口为get请求时参数会丢失,post不会出现问题.原因:get请求参 ...
- Linux | (WGET、Curl、Aria2、Axel)的最佳命令行下载加速工具【详解】
简介: 在远程服务器或者本地工作时,您可能经常需要从外部源获取内容.要获得这样的内容,特别是当您没有其他选项时,您将需要使用Linux命令行工具来完成这项工作. 在本篇文章当中,我们将介绍一些最常用的 ...
- 渗透测试Linux命令手册(包含curl,grep,ss,ssh)
这里给出的Linux命令都是渗透当中比较常见的 建议直接使用Ctrl+F查找 文章目录 Curl命令 curl -o curl -O curl -I curl -H curl -d curl -L c ...
- 【linux查看出口IP(curl cip.cc)】
linux查看出口IP(curl cip.cc) 通过curl cip.cc命令查看服务器外网ip
- Linux系统中安装curl
curl是一个使用URL语法在命令行下使用的文本传输工具,下面为大家分享一下如何安装curl. curl简介: curl是一个广泛使用的用来上传和下载的命令行工具,当然严格来讲,它还可以有别的用途 ...
- Linux C语言通过curl下载https资源
Linux C语言通过curl下载https资源代码如下,注意需要把main函数 char *url 赋值为需要下载文件的路径. #include <curl/curl.h> #inclu ...
- Linux常用命令08 - curl
curl 是一个命令行实用程序,用于将数据从服务器或传输到服务器,该服务器设计用于在没有用户交互的情况下工作. 使用 curl,您可以使用支持的协议(包括 HTTP. HTTPS. SCP. SFTP ...
- linux curl命令 post,linux环境下使用curl命令设置Header参数发送post请求
linux环境下使用curl命令设置Header参数发送post请求 linux环境下使用curl命令设置Header参数发送post请求 案例1:curl命令发送post请求并且获取返回结果以及响应 ...
- linux redis病毒,Linux系统之Redis扩散病毒继续分析
* soft nproc 100000 root hard nproc 100000 root soft nproc ...
最新文章
- Spring5参考指南:Bean的创建
- python 文件遍历
- 彩虹云任务极致精简版--PHPcron程序
- qn模块java脚本_Qn271 对于网络编程 反射 IO 线程的一些一本入门程序 多多联系会加快 速度 WinSock-NDIS 269万源代码下载- www.pudn.com...
- java高并发日志_高并发下log4j的性能瓶颈
- mac Desktop 在Terminal 无法访问,错误提示:ls: .: Operation not permitted
- 如何降低软件项目的风险 -- 包括客户的风险,软件提供商的风险
- java添加购物车代码_Java web实现购物车功能的示例代码
- JAVA流程图——主要用于循环
- SpringBoot官方文档学习
- 格力空调售后服务管理系统
- [09-Dec-2012] 《少年pi的奇幻之旅》 -推荐
- python爬房源信息_Python:爬取airbnb房源信息(Selenium)
- 互联网产品运营——什么是产品运营?
- 最大数字 题解 (删除k个数字----贪心)
- byte java 详解_详解java中的byte类型
- NFDATA定义的一个细节
- 西电计科计算机视觉期末复习笔记
- wget linux
- bilibili怎么用用户名登录_b站怎么用用户名登录 bilibili如何用用户名登录
热门文章
- Docker实战(精简版本)
- Vue3---vue组件库
- angular封装富文本编辑器指令
- mysql数据迁移neo4j_neo4j数据库迁移---------Neo4j数据库导入导出的方法
- simulink方框_4.4设计Simulink框图的界面
- javaee 中文帮助文档_大牛耗时三天整理的:微服务+Nginx+Kubernetes实战文档和面试题...
- 移动场景在其缩略图中显示场景中所显示的区域
- C语言 va_end 宏 - C语言零基础入门教程
- Python 线程障碍对象 Barrier - Python零基础入门教程
- linux启动tongweb命令,linux7开机自启动东方通tongweb