curl:(6)无法解析主机:应用程序

时间:2016-04-01 16:42:26

标签: curl

在此命令后获取 url:(6)无法解析host:application 错误:

curl -i -H 'Content-Type: application/json' -d '{"Code":"FR","Name":"France"}' http://127.0.0.1:8080/countries

完整错误日志:

curl: (6) Could not resolve host: application
HTTP/1.1 415 Unsupported Media Type
Content-Type: application/json; charset=utf-8
X-Powered-By: go-json-rest
Date: Sat, 02 Apr 2016 05:31:20 GMT
Content-Length: 73

{
"Error": "Bad Content-Type or charset, expected 'application/json'"
}

这个命令出了什么问题?

修改

我在windows中解决了我的问题编辑:"{/"Code/":/"FR/"}"

8 个答案:

答案 0 :(得分:85)

在我的情况下,在冒号之后放置空格是错误的。

+-------+--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|userId |date    |generation                                                                                                                                                                                                       |
+-------+--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|1      |20160926|Map("screen_WiFi" -> 15.127, "upload_WiFi" -> 0.603, "total_WiFi" -> 19.551,"screen_2g" -> 0.573, "upload_2g" -> 0.466, "total_2g" -> 1.419, "screen_3g" -> 10.084, "upload_3g" -> 80.515, "total_3g" -> 175.435)|
+-------+--------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

答案 1 :(得分:5)

它将字符串application视为您的网址。
这意味着您的shell未正确解析命令。我的猜测是你从某个地方复制了字符串,当你粘贴它时,你会得到一些看似普通引号的字符,但不是。
尝试重新输入命令;你只能从键盘上获得有效的字符。我敢打赌,你会从看起来像同一个查询的结果得到一个非常不同的结果。 因为这可能是一个shell问题而不是'curl'问题(你没有自己从源代码构建cURL,不是吗?),你可能会提到你是否在Linux / Windows /等等。

答案 2 :(得分:1)

我将所有单引号[']替换为双引号[“],然后运行良好。感谢@LogicalKip的输入。

答案 3 :(得分:0)

我也收到此错误。我通过安装解决了它:  https://git-scm.com/

并从Git Bash窗口运行命令。

答案 4 :(得分:0)

在我的情况下,由于缺少正确的复制和粘贴,缺少了换行符,从而添加了不必要的参数。

我遵循了https://pytorch.org/docs/stable/notes/windows.html#include-optional-components上的指南,当您将其直接复制到此处而不进行任何编辑时,它看起来像这样:

REM确保已安装7z和curl。

REM下载MKL文件

curl https://s3.amazonaws.com/ossci-windows/mkl_2020.0.166.7z -k -O 7z x -aoa mkl_2020.0.166.7z -omkl

输出:

C:\Users\Admin>curl "https://s3.amazonaws.com/ossci-windows/mkl_2020.0.166.7z" -k -O 7z x
-aoa mkl_2020.0.166.7z -omkl   
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed 
100  103M  100  103M  0     0  5063k      0  0:00:21  0:00:21 --:--:-- 5629k
0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0curl: (6) Could not resolve host: 7z
0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0curl: (6) Could not resolve host: x 
curl: (6) Could not resolve host: mkl_2020.0.166.7z

在“ 7z”之前实际上有一个换行符,并且以“ 7z”作为可执行文件(并且在此之前,除了向user PATH添加curl之外,您还需要向user PATH添加7z同样,例如setx PATH "%PATH%;C:\Program Files\7-Zip\"):

REM下载MKL文件

curl https://s3.amazonaws.com/ossci-windows/mkl_2020.0.166.7z -k -O

7z x -aoa mkl_2020.0.166.7z -omkl

答案 5 :(得分:0)

就我而言,我将curl命令从Confluence复制到了TextEdit。花了将近一个小时的时间,并尝试将命令粘贴到不同的文本编辑器中进行清理,最后,PyCharm帮助了我(IntelliJ也应提供帮助)

将其粘贴到PyCharm中后,我看到了错误

Non-breaking spaces

删除这些“ NBSP”(不间断空格)后,命令开始正常运行。

答案 6 :(得分:0)

Windows 控制台通常无法正确解释 JSON 数组中的双引号,因此您可以在双引号前添加斜杠 / 来解决该问题。

答案 7 :(得分:-1)

Slack ....的例子(使用你自己在那里生成的网址)......

curl -X POST -H "Content-type:application/json" --data "{\"text\":\"A New Program Has Just Been Posted!!!\"}" https://hooks.slack.com/services/T7M0PFD42/BAA6NK48Y/123123123123123

相关问题