Questions tagged «curl»

curl是一种数据传输实用程序,用于大量与网络相关的应用程序(例如,抓取数据)。

1
cURL上传文件并发送POST数据
我有一个运行一些PHP的Web服务器,它检查图像(curl -F 'imageName=@myimage'),并检查POST数据username=&password=。 当PHP检查时,_REQUEST我不能这样做: curl -F 'imageName=@myimage' \ 'http://www.example.com/?upload=1&username=test&password=test' _POST由于规范,我需要检查用户名和密码。如何上传图片并获得username=&password=发布数据? 任何帮助表示赞赏!
11 curl 

1
当curl获得非200 HTTP状态时退出bash脚本
我有一个bash脚本设置来执行一些curl请求 for currency in EUR INR JPY do curl -i --data '{"currency": "'$currency'"}' -H "Accept: application/json" -H "Content-Type: application/json" http://0.0.0.0:8080/price && echo done 如果其中一个curl响应返回http状态!= 200,是否有办法使脚本退出? 我还希望保留标准的curl输出,例如,我不希望仅打印http状态代码的解决方案。 干杯

2
为什么sudo无法与curl配合使用?
我运行了一个命令来下载curl- sudo curl roots.cx/get | sh –它引发了权限被拒绝的错误。所以我做到了sudo curl,我遇到了同样的错误……那是为什么? 我可以在没有安装的情况下运行install命令curl,但是我需要这样做sudo,所以为什么curl不能使用sudo?
10 sudo  curl 

2
如何使用Wget等命令行工具登录OpenID网站?
具体来说,我希望能够从我的用户配置文件中的各个Stack Exchange网站上下载某些页面。但是,我想cron从命令行以可解析的格式自动执行此操作(使用作业)。我更喜欢使用Linux,但是如果需要,我可以访问Mac或Windows计算机。 理想情况下,我想使用Wget或cURL之类的工具来获取页面。我不知道如何通过登录。我已经看到一些建议,其中提到您可以通过Firefox登录,导出相关的Cookie并通过其--load-cookies选项将其导入Wget 。例如在这里和这里。如果我刚刚登录,这可以正常工作,但不久后就不会生效。我想是因为ID令牌必须刷新。 因此,在登录到SU并导出我的cookie之后,我可以执行以下操作: wget --load-cookies cookies.txt \ https://superuser.com/users/151431/terdon?tab=responses 几分钟后,我收到404错误: wget -O ~/stack/$(date +%s) --load-cookies ~/cookies.txt \ https://superuser.com/users/151431/terdon?tab=responses --2013-08-06 04:04:14-- https://superuser.com/users/151431/terdon?tab=responses Resolving superuser.com (superuser.com)... 198.252.206.16 Connecting to superuser.com (superuser.com)|198.252.206.16|:80... connected. HTTP request sent, awaiting response... 404 Not Found 2013-08-06 04:04:15 ERROR 404: Not Found. 那么,如何从命令行自动登录启用了OpenID的网站? PS。我认为这比Web应用程序更适合这里,因为我的问题实际上是关于命令行方面的,而不是所讨论网页的实际细节。我想任何解决方案都将适用于所有OpenID网站。

2
如何从GitHub下载无法访问本地计算机上的“ git”的私有存储库?
我想做的是从GitHub下载私有存储库归档文件,将其解压缩,删除归档文件并复制下载项目内部的某些目录。 我尝试使用,wget但无法授权自己: wget --header='Authorization: token MY_TOKEN_CREATED_ON_GITHUB' https://github.com/MY_USER/MY_REPO/archive/master.tar.gz -O - | tar xz 我也尝试过cURL: curl -i -H 'Authorization: token MY_TOKEN_CREATED_ON_GITHUB' https://github.com/MY_USER/MY_REPO/archive/master.tar.gz > file.tar.gz | tar xz 授权通过了,但是我无法解压缩文件。 怎么做?

1
为什么启动Curl会有很长的6秒延迟
我在Windows 7 x64计算机上完整安装了Cygwin。重新启动每台计算机后,Curl可能需要大约6秒钟才能启动(即使未指定任何命令行选项)。在以后使用Curl时,没有延迟。似乎DLL正在初始化或?有没有其他人看到过,这正常吗?

3
curl http_code为000
我有一个shell脚本,用于监视我的实时服务器群集上的加载时间和响应代码。它每5分钟运行250次迭代,分布在10个服务器和6个站点上。它使用带有-w标志的curl来返回相关信息,然后由我的shell脚本解析: curl -svw 'monitor_load_times %{time_total} %{http_code}' -b 'server=$server' -m 15 -o /dev/null $url 2>&1 然后,该信息由图形脚本解析,该脚本可以显示许多不同的响应。但是,curl偶尔会返回响应代码“000”。当发生这种情况时,尽管分布在多次迭代中,但它似乎一次发生多次: 我正在努力解决的问题是,如果这是一个客户端问题,这会导致我的结果出现偏差,或者它是否真的表明服务器端问题会影响整个集群。 000表示连接被丢弃了吗?对应于具有该响应代码的curl迭代的数据库条目对于time_total值返回“0.000”。我发现curl返回代码000的所有搜索结果都与HTTPS不受支持有关,但我的所有测试URL都是HTTP。 (500个错误的峰值是一个完全不相关的问题,昨晚影响了我的服务器。)
5 http  curl 

3
HTTP响应卷曲并获得不同的结果
为了检查HTTP响应标头中的一组URL,我使用curl发送了以下请求标头 foreach ( $urls as $url ) { // Setup headers - I used the same headers from Firefox version 2.0.0.6 $header[ ] = "Accept: text/xml,application/xml,application/xhtml+xml,"; $header[ ] = "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; $header[ ] = "Cache-Control: max-age=0"; $header[ ] = "Connection: keep-alive"; $header[ ] = "Keep-Alive: 300"; $header[ ] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; …
4 php  http  wget  curl 

1
从命令行多线程批量下载URL
我有100,000个小文件网址可供下载。想使用10个线程和流水线是必须的。我将结果连接到一个文件。目前的做法是: cat URLS | xargs -P5 -- curl >> OUTPUT 是否有更好的选择可以显示整个操作的进度?必须从命令行工作。

2
卷曲:2个ssl命令之间的差异
我无法区分或何时使用一个而不是另一个。(这应该是在serverfault吗?) -E / - 证书 (SSL)告诉curl在使用HTTPS或FTPS获取文件时使用指定的证书文件。证书必须采用PEM格式。如果未指定可选密码,将在终端上查询。请注意,此选项假定“证书”文件是私钥,并且私有证书连接在一起!请参见--cert和--key以单独指定它们。 如果curl是针对NSS SSL库构建的,则此选项告知curl要在由环境变量SSL_DIR(或默认为/ etc / pki / nssdb)定义的NSS数据库中使用的证书的昵称。如果NSS PEM PKCS#11模块(libnsspem.so)可用,则可以加载PEM文件。 如果多次使用此选项,将使用最后一个选项。 --cert型 和 --cacert (SSL)告诉curl使用指定的证书文件来验证对等方。该文件可能包含多个CA证书。证书必须采用PEM格式。通常,curl构建为使用默认文件,因此该选项通常用于更改该默认文件。 curl识别名为'CURL_CA_BUNDLE'的环境变量(如果已设置),并使用给定路径作为CA证书包的路径。此选项会覆盖该变量。 curl的Windows版本将自动查找名为“curl-ca-bundle.crt”的CA证书文件,该文件位于curl.exe所在的目录中,或者位于当前工作目录中,或者位于PATH的任何文件夹中。 如果curl是针对NSS SSL库构建的,则此选项告知curl要在由环境变量SSL_DIR(或默认为/ etc / pki / nssdb)定义的NSS数据库中使用的CA证书的昵称。如果NSS PEM PKCS#11模块(libnsspem.so)可用,则可以加载PEM文件。 如果多次使用此选项,将使用最后一个选项。
3 curl 

1
Linux中的VPN路由问题 - 如何使只能绑定到IP地址的应用程序工作?
现在我在我的远程ubuntu VPS上设置了PPTP VPN。我想让某些应用程序使用VPN访问互联网(rtorrent,irssi等)。目前,它设置如下: eth0链接封装:以太网HWaddr 00:16:3e:94:38:ce inet addr:66.xxx.xxx.xxx Bcast:66.xxx.xxx.xxx掩码:255.255.255.0 eth1链接封装:以太网HWaddr 00:16:3e:d7:58:a1 inet addr:10.2.0.111 Bcast:10.255.255.255掩码:255.0.0.0 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 ppp0链接封装:点对点协议inet addr:192.168.10.244 PtP:192.168.9.1掩码:255.255.255.255 从本质上讲,我看到这个问题的方式就是这样。 我跑的时候 curl --interface eth0 checkip.dyndns.com 我明白了 <html><head><title>Current IP Check</title></head><body>Current IP Address: 66.xxx.xxx.xxx</body></html> 当我跑 curl --interface ppp0 checkip.dyndns.com 我明白了 <html><head><title>Current IP Check</title></head><body>Current IP Address: 95.xxx.xxx.xxx</body></html> 哪个是对的。 但是,当我跑 …
3 linux  vpn  routing  curl  rtorrent 


2
在互联网上存放短字符串(用我的密钥)的位置?
是否有简单的服务来存储我的密钥下可以被机器人使用的字符串? 要求: 简单的命令行访问,允许自动发布 无需保持与服务的一些会话 我选择了密钥(所以pastebins失败了) 无需注册/认证(为简单起见) 字符串应保存约一个月。 我想要的东西: Store: $ echo some_data_0x1299C0FF | store_my_string testtest2011 Retrieve: $ retrive_my_string testtest2011 some_data_0x1299C0FF 你有什么想法我应该用它吗?我只能想到以某种方式使用IRC(频道主题/whowas,......),但这对于这个简单的任务来说太复杂了。 不需要安全性:任何人都可以更新我的字符串。任务看起来很简单,所以我希望解决方案同样简单。期待像单一简单的curl电话。
2 curl  irc  dynamic-dns 

0
发布使用Curl发布的SOAP包装的XML导致无效的XML字符被发现异常
使用curl发送XML文件会导致: Invalid XML character (Unicode : 0x<integer>) 尝试解决问题 根据这个SO答案,如果XML版本更改为1.1,问题将得到解决。 虽然已更新驻留在XML文件中的版本: <?xml version="1.1" encoding="utf-8" standalone="yes"?> curl似乎继续将XML作为1.0版发送。 第二次尝试解决问题 另一种尝试是更改使用curl发布时使用的标头,如下所示: curl -X POST -H "Content-Type: text/xml; charset=utf-8; version=1.1" Curl似乎忽略了这一点,因为输出表明使用了xml版本1.0: * Closing connection #0 <?xml version="1.0" encoding="utf-8"?><soapenv:Envelope 第三次尝试解决问题 @Ƭᴇcʜιᴇ007建议创建一个小的XML文件: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body> <note> <to>Test</to> </note> </soap:Body> </soap:Envelope> 验证语法并随后发布: An …
2 unicode  curl  xml  post 

0
卷曲PUT“方法不允许”
我想简单地使用curl和PUT方法将文件存储到我在Windows 7上运行的家庭apache web服务器。当我发出一个简单的命令时: curl --upload-file /path/to/file/badname --url http://serverip 我收到一个错误: Method not allowed 我必须在apache上有任何处理程序脚本,只需使用curl和PUT在服务器上添加/存储文件吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.