命令提示符下的curl无法解析localhost

时间:2016-09-17 15:42:00

标签: curl elasticsearch

我试图通过curl运行一些弹性命令。

在命令提示符下,当我输入: curl www.google.com - 工作正常 curl localhost:9200 - 在这里托管的弹性搜索,工作正常

但是,命令:curl -XPOST' localhost:9200 / bank / account / _bulk?pretty' --data-binary" @ accounts.json" 给我错误:无法解析主机:' localhost

下面是快照。error in window cmd

有人可以建议我如何纠正这个问题吗?或者,如果不知何故我可以使用邮递员或其他一些http客户端来运行此命令?

4 个答案:

答案 0 :(得分:6)

指定协议并更改引号:

rootSetPane

答案 1 :(得分:2)

尝试: curl -XPOST 'http://localhost:9200/bank/account/_bulk?pretty' --data-binary

答案 2 :(得分:0)

尝试使用双引号代替。例如:

curl -XGET "localhost:9200/_cat/indices?v&pretty"

答案 3 :(得分:0)

这里有很好的答案,但它们没有解释为什么。问题是 Windows 命令外壳无法将单引号识别为引号字符(就像 Linux/Mac 命令外壳那样)。因此,cmd 按字面意思解释 'localhost:9200/bank/account/_bulk?pretty',将该字符串传递给 curl —— 包括单引号字符。然后,Curl 使用冒号前的所有内容作为主机名,即 'localhost,这正是您看到的错误消息。