热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Elasticsearch.js宣布——在Node.js和浏览器中挪用Elasticsearch

继PHP、Ruby、Python和Perl以后,Elasticsearch近来宣布了Elasticsearch.js,Elasticsearch的JavaScript客户端库。能够

继PHP、Ruby、Python和Perl以后,Elasticsearch近来宣布了Elasticsearch.js,Elasticsearch的Javascript客户端库。能够在Node.js和浏览器中运用。

《Elasticsearch.js 宣布 —— 在Node.js和浏览器中挪用Elasticsearch》

装置node.js模块

在Node.js项目中运用,只需用npm装置:

浏览器

Elasticsearch.js为当代浏览器预备了构建,可从此处获得。

下载后解压缩,然后挑选合适你的文件:

  • elasticsearch.jquery.js —— 假如你运用jQuery
  • elasticsearch.angual.js —— 假如你运用Angular
  • elasticsearch.js —— 其他状况

设置

竖立一个elasticsearch.Client的新实例:

var elasticsearch = require('elasticsearch');
// 运用默许设置衔接到 localhost:9200
var client = new elasticsearch.Client();
// 衔接两个节点,负载平衡运用round-robin算法
var client = elasticsearch.Client({
hosts: [
'elasticsearch1:9200',
'elasticsearch2:9200'
]
});

在浏览器中设置

Client组织器接收的参数是一样的,然则差别的构建接见组织器的体式格局有所差别:

// elasticsearch.js 将 elasticsearch 定名空间到场窗口
var client = elasticsearch.Client({ ... });
// elasticsearch.jquery.js 将 es 定名空间到场 jQuery 对象
var client = jQuery.es.Client({ ... });
// elasticsearch.angular.js 竖立 elasticsearch 模块
// 供应 esFactory
var app = angular.module('app', ['elasticsearch']);
app.service('es', function (esFactory) {
return esFactory({ ... });
});

运用client实例挪用API

竖立了实例后挪用API就很简朴了。

// 猎取状况,参数可选,能够只通报一个回调
client.cluster.health(function (err, resp) {
if (err) {
console.error(err.message);
} else {
console.dir(resp);
}
});
// 竖立索引
client.index({
index: 'blog',
type: 'post',
id: 1,
body: {
title: 'Javascript Everywhere!',
content: 'It all started when...',
date: '2013-12-17'
}
}, function (err, resp) {
// ...
});
// 搜刮文档
client.search({
index: 'users',
size: 50,
body: {
query: {
match: {
profile: 'elasticsearch'
}
}
}
}).then(function (resp) {
var hits = resp.body.hits;
});

Elasticsearch.js以Apache 2.0许可证宣布,源代码在Github上。

撰文 SegmentFault


推荐阅读
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • Node.js 入门指南(一)
    本文介绍了Node.js的安装步骤、如何创建第一个应用程序、NPM的基本使用以及处理回调函数的方法。通过实际操作示例,帮助初学者快速掌握Node.js的基础知识。 ... [详细]
  • 本文深入探讨了Redis中的两种主要持久化方式——RDB(Redis Database)和AOF(Append Only File),并详细解析了两者的实现机制、优缺点以及在实际应用中的选择策略。 ... [详细]
  • 本文深入探讨了 Prototype.js 框架及其与 JavaScript 原生 toString() 方法之间的区别,适合对前端开发感兴趣的开发者阅读。文章将帮助读者理解两者在功能实现和应用场景上的不同,从而更好地利用这些工具进行高效编程。 ... [详细]
  • PHP服务器搭建的重要性及方法
    本文深入探讨了为什么在开发PHP应用之前需要搭建服务器环境,以及如何选择和搭建适合的PHP服务器。 ... [详细]
  • 本文详细介绍了如何在Linux系统中安装和配置Node.js,包括从官方下载、编译安装到运行基本示例的全过程。 ... [详细]
  • Node.js中子进程的创建与管理详解
    本文深入探讨了Node.js中如何使用child_process模块来创建和管理子进程,包括exec、spawn和fork三种方法的具体应用及其实现细节。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 本文介绍如何通过Windows批处理脚本定期检查并重启Java应用程序,确保其持续稳定运行。脚本每30分钟检查一次,并在需要时重启Java程序。同时,它会将任务结果发送到Redis。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 本文详细介绍了 Node.js 中 Worker.isMainThread 属性的功能、用法及其实例代码,帮助开发者更好地理解和利用多线程技术。 ... [详细]
  • 本文详细解析了 MySQL 中的 ibdata1 文件,探讨其存储内容、快速增长的原因及解决策略。 ... [详细]
  • 利用NVM实现Node.js多版本管理
    本文详细介绍如何使用NVM(Node Version Manager)进行Node.js的多版本管理,包括安装配置、版本切换等操作。 ... [详细]
author-avatar
手机用户2602903963
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有