使用中发现,用 curl -XPUT 一个数据必须加上 id,不然会报错 No handler found for uri [/megacorp/employee/] and method [PUT]
但是如果用 curl -PUT 则不用 id 也可以自动生成 id,效果和 POST 一样 这是为什么呢?
1
hcymk2 2017-08-18 15:21:38 +08:00
curl -PUT 这个 curl 会忽略-PUT 的,没有这种写法,当作 get 请求, curl -XPUT 就是一个 PUT 请求
你可以加个-v 看下 |
2
hagezhou OP @hcymk2 -v 的输出
* Hostname was NOT found in DNS cache * Trying 192.168.200.138... * Connected to 192.168.200.138 (192.168.200.138) port 9200 (#0) > POST /megacorp/employee/ HTTP/1.1 > User-Agent: curl/7.35.0 > Host: 192.168.200.138:9200 > Accept: */* > Content-Length: 202 > Content-Type: application/x-www-form-urlencoded > * upload completely sent off: 202 out of 202 bytes < HTTP/1.1 201 Created 看起来确实被忽略了,而且实际上是 POST ? |
4
hcymk2 2017-08-18 15:35:39 +08:00
加了-d 的吧 当表单提交了 application/x-www-form-urlencoded
|
5
crystom 2017-08-18 16:55:14 +08:00
这个是 curl 的命令特点,和 es 没关系
|