我是一名学生,我需要与DB合作,但这不是我的领域。
在文档中说明要输入
行GET /_cat/health?v
这会返回错误
-bash: GET: command not found
它还建议我复制为卷曲。然后有效的命令是
curl -XGET 'localhost:9200/_cat/health?v&pretty'
我可以使命令“GET / _cat / health?v”起作用吗?
答案 0 :(得分:1)
GET
是request method协议的HTTP。如果您不编写HTTP服务器或客户端软件,则不必明确处理它。
命令行
curl -XGET 'localhost:9200/_cat/health?v&pretty'
告诉curl
使用http://localhost:9200/_cat/health?v&pretty
request method请求网址GET
。
GET
是默认方法,您无需明确指定。
此外,您向curl
提供的第二个参数不是URL。 curl
很好,并将其完成到正确的URL,但其他期望URL的程序可能无法正常工作(出于各种原因)。最好始终指定完整的URL以获得您期望的行为。
您的命令行应该是:
curl 'http://localhost:9200/_cat/health?v&pretty'
URL周围的撇号是必需的,因为它包含shell特有的字符(&
)。用撇号括起来的字符串告诉shell不要解释其中的任何特殊字符。
如果没有撇号,shell认为curl
命令在&
结束,而pretty
是一个不同的命令,结果不是你所期望的。
在幕后,curl
使用HTTP
连接到端口localhost
上的服务器9200
,然后将其发送到HTTP request:
GET /_cat/health?v&pretty
答案 1 :(得分:0)
当您开始使用Elasticsearch时,他们要求您测试安装的第一件事就是执行GET / _cat / health?v,如下所示: enter link description here
正如Ravi Sharma前面解释的那样,他们没有告诉您这在终端中将不起作用。弹性搜索小组也许应该对此进行澄清。至少他们提供了“复制为cURL”链接。对于刚接触这个的人来说,这真令人沮丧。