Node.js

Elasticsearch Node.js client is official client for Node.js.

A sample Node.js application can be found on GitHub https://github.com/searchly/searchly-nodejs-sample.

Add elasticsearch dependency to your package.json file and use npm to install your dependencies

<span></span><span class="s2">"dependencies"</span><span class="o">:</span> <span class="p">{</span>
   <span class="s2">"elasticsearch"</span><span class="o">:</span> <span class="s2">">=1.1.0"</span>
<span class="p">}</span>
			

Create a search client:

<span></span><span class="kd">var</span> <span class="nx">elasticsearch</span> <span class="o">=</span> <span class="nx">require</span><span class="p">(</span><span class="s1">'elasticsearch'</span><span class="p">);</span>

<span class="kd">var</span> <span class="nx">connectionstring</span> <span class="o">=</span> <span class="nx">process</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">searchbox_url</span><span class="p">;</span>

<span class="kd">var</span> <span class="nx">client</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">elasticsearch</span><span class="p">.</span><span class="nx">client</span><span class="p">({</span>
    <span class="nx">host</span><span class="o">:</span> <span class="nx">connectionstring</span>
<span class="p">});</span>
			

Index a document

<span></span><span class="nx">client</span><span class="p">.</span><span class="nx">index</span><span class="p">({</span>
  <span class="nx">index</span><span class="o">:</span> <span class="s1">'sample'</span><span class="p">,</span>
  <span class="nx">type</span><span class="o">:</span> <span class="s1">'document'</span><span class="p">,</span>
  <span class="nx">id</span><span class="o">:</span> <span class="s1">'1'</span><span class="p">,</span>
  <span class="nx">body</span><span class="o">:</span> <span class="p">{</span>
          <span class="nx">name</span><span class="o">:</span> <span class="s1">'reliability'</span><span class="p">,</span>
          <span class="nx">text</span><span class="o">:</span> <span class="s1">'reliability is improved if multiple redundant sites are used, which makes well-designed cloud computing suitable for business continuity.'</span>
  <span class="p">}</span>
<span class="p">},</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">error</span><span class="p">,</span> <span class="nx">response</span><span class="p">)</span> <span class="p">{</span>
  <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">response</span><span class="p">);</span>
<span class="p">});</span>
			

Create a query and search it

<span></span><span class="nx">client</span><span class="p">.</span><span class="nx">search</span><span class="p">({</span>
        <span class="nx">index</span><span class="o">:</span> <span class="s1">'sample'</span><span class="p">,</span>
        <span class="nx">type</span><span class="o">:</span> <span class="s1">'document'</span><span class="p">,</span>
        <span class="nx">body</span><span class="o">:</span> <span class="p">{</span>
            <span class="nx">query</span><span class="o">:</span> <span class="p">{</span>
                <span class="nx">query_string</span><span class="o">:</span><span class="p">{</span>
                   <span class="nx">query</span><span class="o">:</span><span class="s2">"reliability"</span>
                <span class="p">}</span>
            <span class="p">}</span>
        <span class="p">}</span>
    <span class="p">}).</span><span class="nx">then</span><span class="p">(</span><span class="kd">function</span> <span class="p">(</span><span class="nx">resp</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">resp</span><span class="p">);</span>
    <span class="p">},</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="p">{</span>
        <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">err</span><span class="p">.</span><span class="nx">message</span><span class="p">);</span>
    <span class="p">});</span>
			

Detailed documentation for Nodejs client can be found here

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.