RESTFul操作索引

 RESTFul操作索引

1 目标

  • 了解什么是RESTFul
  • 会使用Postman工具
  • 能使用Postman工具操作索引

2 讲解

2.1 RESFFul介绍

什么是restful?

传统方式:


URL                                        服务器上资源
http://localhsot:8080/save                访问的资源save();
http://localhsot:8080/update              访问的资源update();
http://localhsot:8080/delete              访问的资源delete();
http://localhsot:8080/find                访问的资源find();

Restful:表现层状态转移


HTTP的请求状态                URI                                  服务器上资源
Http的协议POST              http://localhsot:8080/list          访问的资源save();
Http的协议PUT               http://localhsot:8080/list          访问的资源update();
Http的协议DELETE            http://localhsot:8080/list          访问的资源delete();
Http的协议GET               http://localhsot:8080/list          访问的资源find();

2.2 安装Postman工具

Postman中文版是postman这款强大网页调试工具的windows客户端,提供功能强大的Web API & HTTP 请求调试。软件功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化。Postman中文版能够发送任何类型的HTTP 请求 (GET, HEAD, POST, PUT,DELETE..),且可以附带任何数量的参数。

下载Postman工具

Postman官网:https://www.getpostman.com

课程资料中已经提供了安装包

双击安装完成后需要自行注册一个账号,这里就不演示了。

6.2.3 使用Postman工具进行Restful接口访问

ElasticSearch的接口语法

curl -X<VERB> '<PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING>' -d '<BODY>'

案例:


curl -XPUT http://localhost:9200/blog/article/1 -d '{"title": "New version of
Elasticsearch released!", content": "Version 1.0 released today!", "tags": ["announce",
"elasticsearch", "release"] }'

参数解释如下:

参数解释
VERB 适当的 HTTP 方法 或 谓词 : GET、 POST、 PUT、 HEAD 或者 DELETE。 
PROTOCOL http 或者 https(如果你在 Elasticsearch 前面有一个 https 代理) 
HOST Elasticsearch 集群中任意节点的主机名,或者用 localhost 代表本地机器上的节点。 
PORT 运行 Elasticsearch HTTP 服务的端口号,默认是 9200 。 
PATH API 的终端路径(例如 _count 将返回集群中文档数量)。Path 可能包含多个组件,例如:_cluster/stats 和 _nodes/stats/jvm 。 |
| QUERY_STRING | 任意可选的查询字符串参数 (例如 ?pretty 将格式化地输出 JSON 返回值,使其更容易阅读) |
| BODY | 一个 JSON 格式的请求体 (如果请求需要的话) |

(1)创建映射

请求URL:

PUT     http://localhost:9200/blog2

请求体:


{
    "mappings": {
		"article": {
			"properties": {
				"id": {
					"type": "long",
					"store": false,
					"index":"not_analyzed"
				},
				"title": {
					"type": "text",
					"store": false,
					"index":"analyzed",
					"analyzer":"ik_smart"
				},
				"content": {
					"type": "text",
					"store": false,
					"index":"analyzed",
					"analyzer":"ik_smart"
				}
			}
		}
	}
}

注意:

“analyzer”:“standard”:表示单字分词(默认值)

“analyzer”:“ik_smart”:使用ik分词器(ik的最小切分)

“store”: true:表示是否存储,只有存储到索引库,才能检索到结果(Elasticsearch的默认值flase)

关键字高亮实质上是根据倒排记录中的词项偏移位置,找到关键词,加上前端的高亮代码。这里就要说到store属性,store属性用于指定是否将原始字段写入索引,默认取值为no。如果在Lucene中,高亮功能和store属性是否存储息息相关,因为需要根据偏移位置到原始文档中找到关键字才能加上高亮的片段。在Elasticsearch,因为_source中已经存储了一份原始文档,可以根据_source中的原始文档实现高亮,在索引中再存储原始文档就多余了,所以Elasticsearch默认是把store属性设置为no。

示例如下:

Elasticsearch-head

(2)删除索引

请求URL

DELETE      http://localhost:9200/blog2

Postman如下:

elasticsearch-head查看:

(3)创建文档document

把上面的映射重新创建一次,然后再执行创建文档

创建文档URL:

POST    http://localhost:9200/blog2/article/1

请求体数据:


{
"id":1,
"title":"ElasticSearch是一个基于Lucene的搜索服务器",
"content":"它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够时搜索。"
}

Postman如下:

elasticsearch-head查看:

(4)修改文档对象Document

请求URL:

http://localhost:9200/blog2/article/1

请求体:


{
"id":1,
"title":"ElasticSearch是一个基于Lucene的搜索服务器-深圳黑马训练营",
"content":"它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够时搜索。"
}

Postman如下:

elasticsearch-head查看:

(5)删除文档Document

请求URL:

DELETE    http://localhost:9200/blog2/article/1

Postman如下:

(6)查询文档-根据id查询

请求URL:

GET      http://localhost:9200/blog2/article/1

Postman如下:

(7)查询文档-querystring查询

请求url:

POST       http://localhost:9200/blog2/article/_search

请求体:


{
	"query": {
		"query_string": {
			"default_field": "title",
			"query": "搜索服务器"
		}
	}
}

Postman如下:

(8)查询文档-term查询

请求URL:

POST     http://localhost:9200/blog2/article/_search

请求体:


{
	"query": {
		"term": {
			"title": "搜索"
		}
	}
}

Postman如下:

6.3 小结

  • 了解什么是RESTFul

properties
  RESTful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

 

  • 能使用Postman工具操作索引

properties
  使用Postman可以创建索引映射、删除索引映射、根据ID查询索引数据、删除索引数据、字符串查找数据、词项查找数据等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值