1.SSL
- 关闭ssl ==》http://host:port
- 安装证书 --》https://host:port
使用对应协议请求,否则ES控制台
[2022-05-16T21:11:02,266][WARN ][o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [VM-24-9-centos] received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/0.0.0.0:9200, remoteAddress=/0.0.0.0:0}
浏览器表现如下
2.如何带上用户名密码
报错信息如下:
{
"error": {
"root_cause": [
{
"type": "security_exception",
"reason": "missing authentication credentials for REST request [/_cat]",
"header": {
"WWW-Authenticate": [
"Basic realm=\"security\" charset=\"UTF-8\"",
"Bearer realm=\"security\"",
"ApiKey"
]
}
}
],
"type": "security_exception",
"reason": "missing authentication credentials for REST request [/_cat]",
"header": {
"WWW-Authenticate": [
"Basic realm=\"security\" charset=\"UTF-8\"",
"Bearer realm=\"security\"",
"ApiKey"
]
}
},
"status": 401
}
需要带上用户信息,
- apifox的解决方式如下
因为测试一般不会只测一个接口,我们可以在分组上或者项目上添加用户信息,接口或分组直接从父级继承就行了
- curl 方式的解决方式如下
curl --user elastic:changeme -XGET 'localhost:9200/_cat/health?v&pretty'
- java代码中的的解决方式如下
待搬运,,,,,,,
报错
{
"error": "no handler found for uri [/blog/type/1] and method [PUT]"
}
原因
随着 7.0 版本的即将发布,type 的移除也是越来越近了,在 6.0 的时候,已经默认只能支持一个索引一个 type 了,7.0 版本新增了一个参数 include_type_name ,即让所有的 API 是 type 相关的,这个参数在 7.0 默认是 true,不过在 8.0 的时候,会默认改成 false,也就是不包含 type 信息了,这个是 type 用于移除的一个开关。
让我们看看最新的使用姿势吧,当 include_type_name 参数设置成 false 后:
索引操作:PUT {index}/{type}/{id}需要修改成PUT {index}/_doc/{id}
Mapping 操作:PUT {index}/{type}/_mapping 则变成 PUT {index}/_mapping
所有增删改查搜索操作返回结果里面的关键字 _type 都将被移除
父子关系使用 join 字段来构建