curl 订阅
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。 展开全文
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。
信息
适用范围
计算机
类    别
用URL语法
作    用
文件传输
中文名
curl
外文名
curl(CommandLine Uniform Resource Locator)
curl简介
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。cURL支持的通信协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。curl还支持SSL认证、HTTP POST、HTTP PUT、FTP上传, HTTP form based upload、proxies、HTTP/2、cookies、用户名+密码认证(Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos)、file transfer resume、proxy tunneling。 [1] 
收起全文
精华内容
下载资源
问答
  • curl 模拟 GET\POST 请求,以及 curl post 上传文件

    万次阅读 多人点赞 2018-06-15 11:41:45
    curl 模拟 GET\POST 请求,以及 curl post 上传文件 一般情况下,我们调试数据接口,都会使用一个 postman 的工具,但是这个工具还是有点大了。事实上,我们在调试一些小功能的时候,完全没有必要使用它。在命令行...

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

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

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

    curl GET 请求

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

    curl localhost:9999/api/daizhige/article
    

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

    curl localhost:9999/api/daizhige/article -v
    

    操作结果如下图所示:

    curl get 请求

    curl POST 请求

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

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

    curl localhost:9999/api/daizhige/article -X POST -d "title=comewords&content=articleContent"
    

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

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

    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 POST 上传文件

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

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

    curl localhost:8000/api/v1/upimg -F "file=@/Users/fungleo/Downloads/401.png" -H "token: 222" -v
    

    执行结果如下图所示:

    curl POST 上传文件

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

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

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

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

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

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

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


    2020年04月27日补充

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

    展开全文
  • curl

    万次阅读 2016-09-06 14:30:59
    //var_dump($_SERVER);exit; $cookie_file = tempnam('./temp','cookie'); //创建cookie文件保存的位置 //echo $cookie_file;... function curl($url,$data=array(),$method,$setcooke=false,$cookie_file=f
    <?php
      //var_dump($_SERVER);exit;
      $cookie_file = tempnam('./temp','cookie');  //创建cookie文件保存的位置
      //echo $cookie_file;exit;
     function  curl($url,$data=array(),$method,$setcooke=false,$cookie_file=false){
    		$ch = curl_init();	 //1.初始化
    		curl_setopt($ch, CURLOPT_URL, $url); //2.请求地址
    		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);//3.请求方式
    		//4.参数如下	禁止服务器端的验证
    		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    		//伪装请求来源,绕过防盗
    	   //curl_setopt($ch,CURLOPT_REFERER,"http://wthrcdn.etouch.cn/");
    	   //配置curl解压缩方式(默认的压缩方式)
    	   curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept-Encoding:gzip'));
           curl_setopt($ch, CURLOPT_ENCODING, "gzip");
    
    		curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0'); //指明以哪种方式进行访问
    		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    		curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    		if($method=="POST"){//5.post方式的时候添加数据	
    			curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    		}
    		if($setcooke==true){
    			 //如果设置要请求的cookie,那么把cookie值保存在指定的文件中
    			curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
    		}else{
    			 //就从文件中读取cookie的信息
    			curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
    		}
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    		$tmpInfo = curl_exec($ch);
    
    		if (curl_errno($ch)) {
    			return curl_error($ch);
    		}
    		curl_close($ch);
    		return $tmpInfo;
    	}
       //模拟登陆
        //登陆保存用户信息到cookie中
    	
        $url="http://www.ecshop.com/user.php";
    	$data=array('username'=>'ecshop','password'=>'ecshop','remember'=>'1','act'=>'act_login','back_act'=>'./index.php','submit'=>'');
    	//post提交也可以不用get视情况而定,json转成数组json_decode($str,true);加true可以防乱码
        curl($url,$data,'POST',true,$cookie_file);
    	//get获取
    	$url="http://www.ecshop.com/user.php?act=order_list";
        $str=curl($url,array(),'GET',false,$cookie_file);
    	echo $str;

    展开全文
  • curl -d

    万次阅读 2018-04-12 14:52:22
    curl命令模拟json格式的post请求 例如:curl -H “Content-Type:application/json” -X POST –data ‘[{“index”:[“*”],”preference”:”1503652289983”,”ignore_unavailable”:”true”},{“sort”:[{...

    curl命令模拟json格式的post请求

    例如:curl -H “Content-Type:application/json” -X POST --data ‘[{“index”:["*"],“preference”:“1503652289983”,“ignore_unavailable”:“true”},{“sort”:[{“timestamp”:{“order”:“desc”}}],“query”:{“must_not”:[],“bool”:{“must”:[{“query_string”:{“query”:“cluster”}},{“range”:{“timestamp”:{“gte”:“1503667558137”,“lte”:“1503667558137”}}}]}},“from”:“0”,“size”:“500”,“version”:“true”}]’ http://127.0.0.1:18080/

    result=curl -s -u 'user':'pass' -XGET "http://192.168.13.70:9200/XXX" -H 'Content-Type: application/json' -d '{"size":10000,"query":{"bool":{"must":[{"range":{"status":{"gte":500,"lte":600}}},{"range":{"@timestamp":{"gte":"now-1h","lte":"now","format":"epoch_millis"}}}]}}}'

    json串内层参数需要符合json格式规范

    展开全文
  • cURL实战教程

    万人学习 2017-08-24 17:36:05
    由King老师精心打造cURL实战课程,由浅入深的讲解了cURL中常见的API,及cURL在实际开发中的应用,实现了模拟登陆、文件上传下载、多线程cURL等。通过cURL可以操作各种网络资源! 山哥出品,必属精品!
  • Curl 显示下载速度等详情

    万次阅读 2020-04-01 11:23:56
    curl -Lo /dev/null -skw "%{speed_download}\n" http:xxxxxx.gz ...# curl -Lo /dev/null -skw "time_connect: %{time_connect} s\ntime_namelookup: %{time_namelookup} s\ntime_pretransfer: %{time_pretransfe...
    curl -Lo /dev/null -skw "%{speed_download}\n" http:xxxxxx.gz
    
    
    # curl -Lo /dev/null -skw "time_connect: %{time_connect} s\ntime_namelookup: %{time_namelookup} s\ntime_pretransfer: %{time_pretransfer} s\ntime_starttransfer: %{time_starttransfer} s\ntime_redirect: %{time_redirect} s\nspeed_download: %{speed_download} B/s\ntime_total: %{time_total} s\n\n"  http://www.xxx.com
    
    time_connect: 0.154 s
    time_namelookup: 0.150 s
    time_pretransfer: 0.154 s
    time_starttransfer: 0.163 s
    time_redirect: 0.157 s
    speed_download: 324679.000 B/s
    time_total: 1.692 s

     

    展开全文
  • 遇到的问题一: error: RPC failed; curl 18 transfer closed with outstanding read data remaining fatal: The remote end hung up unexpectedly fatal: early EOF fatal: index-pack fail...
  • curl安装

    万次阅读 2018-06-28 10:57:41
    1、curl官网https://curl.haxx.se/2、curl简介curl是用于通过URL传输数据的命令行工具和库支持...DICT,FILE,FTP,FTPS,Gopher,HTTP,HTTPS,IMAP,IMAPS,LDAP,LDAPS,POP3,POP3S,RTMP...curl支持SSL证书,H...
  • curl命令获取本机外网IP

    万次阅读 2018-10-10 20:15:45
    curl获取本机外网IP的几个命令: curl ifconfig.me curl icanhazip.com curl curlmyip.com curl ip.appspot.com curl ipinfo.io/ip curl ipecho.net/plain curl www.trackip.net/i #补充 curl ip.sb ...
  • curl malformed

    千次阅读 2019-08-31 11:46:48
    PHP Curl调用接口时,如果 url 地址是 NULL 类型,那么调用curl_error() 方法将会 返回malformed
  • Ubuntu 安装curl

    万次阅读 2017-12-22 20:02:15
    程序“curl”尚未安装。 您可以使用以下命令安装: sudo apt install curl 已经提示很明确了,sudo apt install curl 先更新一下sudo apt-get update sudo apt install curl
  • curl命令

    千次阅读 2015-06-18 15:26:03
    curl是一种命令行工具,支持多种协议,作用是发出网络请求,然后得到和提取数据,显示在stdout上面。 在服务器端,使用curl查看请求地址是否返回数据来判断是nginx配置问题还是程序服务配置问题不失为一种好方式...
  • curl命令详解 (curl -I)

    万次阅读 2019-07-30 11:30:47
    curl 是一种命令行工具,作用是发出网络请求,然后获取数据,显示在"标准输出"(stdout)上面。它支持多种协议,下面列举其常用功能。 一、查看网页源码 直接在 curl 命令后加上网址,就可以看到网页源码。以网址...
  • curl命令模拟json格式的post请求

    万次阅读 2017-09-06 08:48:57
    curl命令 模拟json格式的post请求测试接口 curl -H "Content-Type:application/json" -X POST --data '
  • Linux中curl命令详解

    万次阅读 2019-03-11 15:26:35
    curl(CommandLine Uniform Resource Locator),即在命令行中利用URL进行数据或者文件传输。 https://curl.haxx.se/ 这是curl的官网。可以从上面的官网地址下载最新的curl版本。同时可以在官网看出curl支持的各种协议...
  • java中怎么使用curl,java中怎么使用curl,java中怎么使用curl
  • 这篇文章主要介绍了PHP中使用CURL之php curl详细解析和常见大坑 ,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 七夕啦,作为开发,妹子没得撩就“撩”下服务器吧,妹子有得撩的同学那就左拥妹子...
  • curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused的几种解决方式? 前言: 最近随着flutter的发布,多数公司都开始...curl: (7) Failed to connect to raw.githubuserconten
  • 其实就是更新一下版本就可以了。 下载curl包(可以在这个网站上找最新的版本 http://curl.haxx.se/download/) ...tar -xzvf curl-7.55.1.tar.gz cd curl-7.55.1 ./configure make mak...
  • Tool之curlcurl的简介、安装、使用方法之详细攻略 curl的简介 curl是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL...
  • curl乱码

    千次阅读 2018-02-08 14:21:03
    curl url返回的内容乱码 使用iconv命令可以解决乱码问题 curl url|iconv -f gb2312 -t utf8iconv -f(rom)指定来源编码,-t(o)转化的编码 -f fromcodeset Identify the codeset of the input file. The ...
  • Linux curl 命令模拟 POST/GET 请求

    万次阅读 多人点赞 2018-08-28 23:38:14
    curl 命令,是一个利用URL规则在命令行下工作的文件传输工具。 curl 支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。 作为一款强力工具,curl支持包括HTTP、HTTPS、FTP等众多协议,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 107,560
精华内容 43,024
关键字:

curl