{"id":66183,"date":"2024-01-10T12:11:02","date_gmt":"2024-01-10T15:11:02","guid":{"rendered":"https:\/\/kinsta.com\/pt\/?p=66183&#038;preview=true&#038;preview_id=66183"},"modified":"2024-01-11T06:05:08","modified_gmt":"2024-01-11T09:05:08","slug":"meilisearch","status":"publish","type":"post","link":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/","title":{"rendered":"Aproveite o Poder do Meilisearch para seu Aplicativo Web"},"content":{"rendered":"<p>De plataformas de eCommerce a sistemas de gerenciamento de conte\u00fado (CMSs), aplicativos web geram e manipulam enormes quantidades de dados. Extrair informa\u00e7\u00f5es relevantes desses dados de maneira eficiente \u00e9 crucial para uma experi\u00eancia do usu\u00e1rio sem problemas. Portanto, a funcionalidade de pesquisa tradicional que utiliza correspond\u00eancia de consulta literal, palavra por palavra, n\u00e3o \u00e9 suficiente. Voc\u00ea precisa de uma pesquisa de texto completo.<\/p>\n<p>Uma pesquisa de texto completo examina o conte\u00fado completo de documentos ou bancos de dados, permitindo que voc\u00ea recupere informa\u00e7\u00f5es relevantes de grandes conjuntos de dados com base em palavras ou frases espec\u00edficas. Ela leva em conta fatores como frequ\u00eancia de ocorr\u00eancia e conte\u00fado multil\u00edngue, produzindo resultados de pesquisa mais precisos e abrangentes.<\/p>\n<p>O <a href=\"https:\/\/www.meilisearch.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Meilisearch<\/a> \u00e9 um dos pioneiros nessa classe de mecanismos de pesquisa, aproveitando o poder da pesquisa de texto completo para oferecer uma ferramenta flex\u00edvel e avan\u00e7ada, criada com os <a rel=\"noopener\">desenvolvedores e usu\u00e1rios finais em mente<\/a>.<\/p>\n<p>Este tutorial demonstra como voc\u00ea pode integrar o Meilisearch em um projeto web do Node.js.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>O que \u00e9 o Meilisearch?<\/h2>\n<p>O Meilisearch \u00e9 um mecanismo de pesquisa de <a href=\"https:\/\/kinsta.com\/pt\/blog\/codigo-aberto-vs-codigo-fechado\/\">c\u00f3digo aberto<\/a> que fornece resultados de pesquisa r\u00e1pidos e relevantes para os usu\u00e1rios finais. Ele \u00e9 tolerante a erros de digita\u00e7\u00e3o e funciona imediatamente com configura\u00e7\u00f5es padr\u00e3o para acomodar a maioria dos projetos.<\/p>\n<p>O Meilisearch tamb\u00e9m \u00e9 altamente personaliz\u00e1vel, oferecendo v\u00e1rios recursos para ajustar a relev\u00e2ncia dos resultados da pesquisa. Entre esses recursos, o mais not\u00e1vel s\u00e3o as <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/core_concepts\/relevancy#ranking-rules\" target=\"_blank\" rel=\"noopener noreferrer\">regras de classifica\u00e7\u00e3o<\/a>, que voc\u00ea pode personalizar para se adequar ao seu projeto.<\/p>\n<p>Ele oferece uma <a href=\"https:\/\/kinsta.com\/pt\/blog\/rest-api-vs-web-api\/#what-is-a-rest-api\">API RESTful<\/a> intuitiva para uma integra\u00e7\u00e3o perfeita em praticamente qualquer site comercial. Voc\u00ea pode hosped\u00e1-lo por conta pr\u00f3pria ou usar sua solu\u00e7\u00e3o oficial hospedada na nuvem, o <a href=\"https:\/\/cloud.meilisearch.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Meilisearch Cloud<\/a>, para come\u00e7ar rapidamente e sem esfor\u00e7o. Este tutorial utiliza o Meilisearch Cloud.<\/p>\n<h2>Pr\u00e9-requisitos<\/h2>\n<p>Para acompanhar, voc\u00ea precisa de:<\/p>\n<ul>\n<li><a href=\"https:\/\/kinsta.com\/pt\/blog\/como-instalar-o-node-js\/\">Node.js<\/a> instalado em seu computador<\/li>\n<li>Um projeto Node.js. Voc\u00ea pode usar <a href=\"https:\/\/github.com\/Tammibriggs\/meilisearch-app\" target=\"_blank\" rel=\"noopener noreferrer\">este projeto inicial do GitHub<\/a>.<\/li>\n<\/ul>\n<h2>Como configurar o Meilisearch<\/h2>\n<ol start=\"1\">\n<li>Navegue at\u00e9 o Meilisearch Cloud e crie uma conta ou fa\u00e7a login. Certifique-se de que voc\u00ea confirmou seu endere\u00e7o de e-mail.<\/li>\n<li>Em seguida, clique em <strong>Create a project<\/strong>, um servidor que executa uma inst\u00e2ncia do Meilisearch &#8211; onde voc\u00ea adicionar\u00e1 os conjuntos de dados do seu site.<\/li>\n<li>Adicione um <strong>nome para o projeto <\/strong>(por exemplo, book-app) e escolha a regi\u00e3o de sua prefer\u00eancia. Em seguida, clique em <strong><span id=\"urn:enhancement-4010ff94-074c-4c0e-966f-aea1132cb2e1\" class=\"textannotation selected\">Create (<\/span><\/strong><strong>Criar)<\/strong>. Depois de criar o projeto, voc\u00ea pode clicar em <strong>Settings (Configura\u00e7\u00f5es)<\/strong> para ver detalhes sobre o projeto, como a URL para acessar os conjuntos de dados, as chaves API para proteger a inst\u00e2ncia do Meilisearch e outras informa\u00e7\u00f5es.\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/book-app-overview.png\" alt=\"A p\u00e1gina de vis\u00e3o geral do projeto book-app.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">A p\u00e1gina de vis\u00e3o geral do projeto book-app.<\/figcaption><\/figure>\n<p>H\u00e1 tr\u00eas chaves API, cada uma representando um <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/security\/master_api_keys\" target=\"_blank\" rel=\"noopener noreferrer\">n\u00edvel de autoriza\u00e7\u00e3o diferente<\/a>:<\/p>\n<ul>\n<li><strong>Chave mestra<\/strong> &#8211; Essa chave desbloqueia todas as rotas e \u00e9 a \u00fanica com acesso aos endpoints para criar e excluir chaves API. Use a chave mestra somente para gerenciar chaves API em um ambiente protegido.<\/li>\n<li><strong>Chave API de pesquisa padr\u00e3o<\/strong> &#8211; Essa chave concede acesso apenas \u00e0 <a href=\"https:\/\/www.meilisearch.com\/docs\/reference\/api\/search\" target=\"_blank\" rel=\"noopener noreferrer\">rota de pesquisa<\/a>. Voc\u00ea pode us\u00e1-la no c\u00f3digo do lado do cliente.<\/li>\n<li><strong>Chave padr\u00e3o da API de administrador<\/strong> &#8211; Essa chave acessa todas as rotas de API, exceto <code>\/keys<\/code>, que serve para criar e excluir chaves API. Voc\u00ea s\u00f3 pode usar essa chave em um ambiente protegido.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h2>Como indexar dados com o Meilisearch<\/h2>\n<p>Os \u00edndices s\u00e3o os principais componentes que armazenam e organizam dados pesquis\u00e1veis. Eles atuam como cont\u00eaineres para documentos, objetos que cont\u00eam um ou mais campos.<\/p>\n<p>Cada \u00edndice no Meilisearch \u00e9 independente e personaliz\u00e1vel, o que permite que voc\u00ea tenha regras de classifica\u00e7\u00e3o de pesquisa e op\u00e7\u00f5es de filtragem individualizadas.<\/p>\n<h3>Como criar um \u00edndice e adicionar documentos<\/h3>\n<ol start=\"1\">\n<li>Na barra de navega\u00e7\u00e3o, clique na aba <strong>Indexes <\/strong>em seu projeto.<\/li>\n<li>Clique em <strong><span id=\"urn:enhancement-f480f18b-ee11-4812-8a9b-5bb8bb45594a\" class=\"textannotation\">Create<\/span> an index<\/strong>. Em seguida, insira um nome de \u00edndice (por exemplo, livros) e clique em <strong><span id=\"urn:enhancement-11493090-ff52-4c40-b40c-ac7500e91cad\" class=\"textannotation\">Create<\/span> index<\/strong>.<\/li>\n<li>Selecione como deseja importar os documentos. Para este guia, importe um arquivo JSON, que inclui 13 entradas de livros da <a href=\"https:\/\/developers.google.com\/books\/docs\/v1\/getting_started\" target=\"_blank\" rel=\"noopener noreferrer\">API do Google Book<\/a>.<\/li>\n<li>Clique em <strong>File <span id=\"urn:enhancement-c693e315-09c4-4f7b-8582-cb491a87fdf2\" class=\"textannotation\">upload<\/span><\/strong> e fa\u00e7a o upload do arquivo JSON e, em seguida, clique em <strong>Import <span id=\"urn:enhancement-a0a5eb0f-a23b-4061-b6a4-3d5251ff2559\" class=\"textannotation\">documents<\/span><\/strong>.<\/li>\n<\/ol>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Todo documento deve ter um campo principal contendo uma <a href=\"https:\/\/www.meilisearch.com\/docs\/learn\/core_concepts\/primary_key\">chave principal<\/a> &#8211; um atributo com um valor exclusivo que deve estar presente em todos os documentos. Geralmente, esse valor \u00e9 o ID do documento. Se essa chave n\u00e3o existir, os documentos n\u00e3o ser\u00e3o carregados com \u00eaxito.<\/p>\n<\/aside>\n\n<h3>Como atualizar e excluir documentos<\/h3>\n<p>Atualmente, o Meilisearch Cloud n\u00e3o inclui uma maneira de modificar ou excluir documentos, mas voc\u00ea pode usar as rotas da API REST ou o SDK. O c\u00f3digo abaixo demonstra como voc\u00ea pode atualizar ou excluir documentos usando os endpoints da API REST. Este tutorial usa o cURL para trabalhar com as rotas, mas voc\u00ea tamb\u00e9m pode usar uma plataforma de API como o Postman.<\/p>\n<ol start=\"1\">\n<li>Para <a rel=\"noopener\">atualizar documentos<\/a>, envie uma solicita\u00e7\u00e3o <code>PUT<\/code> na seguinte rota:\n<pre><code class=\"language-bash\">\/indexes\/{index_uid}\/documents<\/code><\/pre>\n<p>O <code>index_uid<\/code> acima \u00e9 o nome do \u00edndice do seu projeto:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/index-name.png\" alt=\"Nome do \u00edndice destacado.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Nome do \u00edndice destacado.<\/figcaption><\/figure><\/li>\n<li>Com essa rota, voc\u00ea pode adicionar ou atualizar uma lista de documentos se eles j\u00e1 existirem. Para atualizar um documento, voc\u00ea deve anexar sua chave prim\u00e1ria. O documento antigo passa por uma atualiza\u00e7\u00e3o parcial com base nos campos do novo documento. A atualiza\u00e7\u00e3o preserva todos os campos n\u00e3o inclu\u00eddos no novo documento, permitindo que eles permane\u00e7am inalterados. Abaixo est\u00e1 um exemplo de como atualizar o t\u00edtulo de um documento no \u00edndice do livro <em>JavaScript for Kids<\/em> para <em>JavaScript Coding for Kids<\/em> e adicionar um campo de editor:\n<pre><code class=\"language-bash\">curl \\\n    -X PUT '\/indexes\/books\/documents' \\\n    -H 'Content-Type: application\/json' \\\n    -H 'Authorization: Bearer ' \\\n        --data-binary '[\n        {\n            \"id\": \"71nDBQAAQBAJ\",\n            \"title\": \"JavaScript Coding for Kids\",\n            \"publisher\": \"No Starch Press\"\n        }\n    ]'<\/code><\/pre>\n<\/li>\n<li>Substitua <code>&lt;your-project-url&gt;<\/code> e <code>&lt;your-admin-api-key&gt;<\/code> pelos valores correspondentes na p\u00e1gina <strong>Project overview<\/strong>:\n<pre><code class=\"language-bash\">\"taskUid\": 26, \"indexUid\": \"books\", \"status\": \"enqueued\", \"type\": \"documentAdditionOrUpdate\", \"equeuedAt\": \"2023-05-26T07:52:24.127920065Z\"<\/code><\/pre>\n<\/li>\n<li>Para excluir documentos, o Meilisearch inclui tr\u00eas rotas (endpoints):\n<pre><code class=\"language-bash\">\/indexes\/{index_uid}\/documents \/\/ Deleting all documents\n\/indexes\/{index_uid}\/documents\/{document_id} \/\/ Deleting a single document\n\/indexes\/{index_uid}\/documents\/delete-batch \/\/ Deleting a selection of  \ndocuments<\/code><\/pre>\n<p>Voc\u00ea pode obter o <code>document_id<\/code> a partir dos dados originais do arquivo <strong>books.json<\/strong> depois de buscar o documento no MeiliSearch Cloud ou no seu banco de dados.<\/li>\n<\/ol>\n<p>Abaixo est\u00e1 um exemplo de como excluir o livro que voc\u00ea atualizou acima:<\/p>\n<pre><code class=\"language-bash\">curl \\\n    -H 'Authorization: Bearer ' \\\n    -X DELETE '\/indexes\/books\/documents\/71nDBQAAQBAJ'<\/code><\/pre>\n<p>Ap\u00f3s enviar a solicita\u00e7\u00e3o, sua resposta dever\u00e1 ser semelhante a esta:<\/p>\n<pre><code class=\"language-bash\">\"taskUid\": 10, \"indexUid\": \"books\", \"status\": \"enqueued\", \"type\": \"documentDeletion\", \"equeuedAt\": \"2023-05-26T07:20:11.1291066\"<\/code><\/pre>\n<h2>Como adicionar o MeiliSearch a um servi\u00e7o web<\/h2>\n<ol start=\"1\">\n<li>Comece clonando o projeto inicial do GitHub, executando os seguintes comandos em seu terminal:\n<pre><code class=\"language-bash\">git clone https:\/\/github.com\/Tammibriggs\/meilisearch-app.git\ncd meilisearch\u200b-app\nnpm install<\/code><\/pre>\n<p>Se voc\u00ea verificar o arquivo <strong>package.json<\/strong>, dever\u00e1 ver o comando start. Execute <code>npm start<\/code> para executar o projeto Node.js na porta 3000 do host local. Quando voc\u00ea digitar http:\/\/localhost:3000\/ no seu navegador, dever\u00e1 ver o seguinte:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/meilisearch-demo-app.png\" alt=\"Aplicativo inicial de demonstra\u00e7\u00e3o do Meilisearch.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Aplicativo inicial de demonstra\u00e7\u00e3o do Meilisearch.<\/figcaption><\/figure><\/li>\n<li>Quando o aplicativo estiver em funcionamento, voc\u00ea poder\u00e1 adicionar o Meilisearch a ele para que o formul\u00e1rio de pesquisa comece a retornar os resultados do Meilisearch quando enviado. Para fazer isso, instale o Meilisearch executando o seguinte comando no terminal:\n<pre><code class=\"language-bash\">npm install meilisearch<\/code><\/pre>\n<\/li>\n<li>Voc\u00ea tamb\u00e9m precisa instalar o pacote <a href=\"https:\/\/www.npmjs.com\/package\/dotenv\" target=\"_blank\" rel=\"noopener noreferrer\">dotenv<\/a> npm para carregar credenciais confidenciais de um arquivo <strong>.env.<\/strong>\u00a0Execute o seguinte comando no terminal:\n<pre><code class=\"language-bash\">npm install dotenv<\/code><\/pre>\n<\/li>\n<li>Crie um arquivo <strong>.env <\/strong>na pasta raiz do projeto e adicione o seguinte:\n<pre><code class=\"language-markdown\">YOUR_PROJECT_URL= '&lt;your-project-url&gt;'\nYOUR_SEARCH_API_KEY= '&lt;your-admin-api-key&gt;'<\/code><\/pre>\n<p>Certifique-se de substituir <code>&lt;your-project-url&gt;<\/code> e <code>&lt;your-admin-api-key&gt;<\/code> por seus valores correspondentes.<\/li>\n<li>Em seguida, importe <code>meilisearch<\/code> e o pacote <code>dotenv<\/code> para o arquivo <strong>server.js<\/strong> e configure <code>dotenv<\/code>:\n<pre><code class=\"language-js\">import {MeiliSearch} from 'meilisearch'\nimport dotenv from 'dotenv';\ndotenv.config();<\/code><\/pre>\n<\/li>\n<li>Em seguida, inicialize o Meilisearch para que voc\u00ea possa come\u00e7ar a trabalhar no seu projeto <strong>books-app<\/strong>. Navegue at\u00e9 o arquivo <strong>server.js<\/strong> e adicione o seguinte c\u00f3digo ap\u00f3s a defini\u00e7\u00e3o da vari\u00e1vel <code>searchValue<\/code>:\n<pre><code class=\"language-js\">const client = new MeiliSearch({ host: process.env.YOUR_PROJECT_URL, apiKey: process.env.YOUR_SEARCH_API_KEY })<\/code><\/pre>\n<\/li>\n<li>Uma funcionalidade importante \u00e9 buscar atrav\u00e9s do seu \u00edndice de livros no Meilisearch usando o valor de busca anexado \u00e0 URL ao enviar o formul\u00e1rio. Para habilitar essa funcionalidade, adicione o seguinte c\u00f3digo ap\u00f3s a defini\u00e7\u00e3o da vari\u00e1vel <code>client<\/code>:\n<pre><code class=\"language-js\">const index = client.index('books')  \nconst searchResults = !!searchValue && await index.search(searchValue)<\/code><\/pre>\n<p>Este c\u00f3digo cria uma refer\u00eancia ao \u00edndice do livro. Em seguida, ele usa o m\u00e9todo <code>search()<\/code> para buscar documentos que correspondam ao valor de pesquisa no \u00edndice do livro, caso voc\u00ea defina <code>searchValue<\/code>.<code><\/code><\/li>\n<li>Por fim, para exibir os resultados da pesquisa, modifique o m\u00e9todo <code>render()<\/code> da seguinte forma:\n<pre><code class=\"language-js\">res.render('index', {\n    books: searchResults ? searchResults.hits : [],\n    searchValue\n})<\/code><\/pre>\n<p>Agora voc\u00ea est\u00e1 pronto para come\u00e7ar a pesquisar no \u00edndice do livro:<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-105526 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/12\/books-index-search-form.gif\" alt=\"Pesquisando no \u00edndice \"books\" com o formul\u00e1rio de pesquisa\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Pesquisando no \u00edndice &#8220;books&#8221; com o formul\u00e1rio de pesquisa.<\/figcaption><\/figure><\/li>\n<li>Depois de adicionar os c\u00f3digos acima, seu arquivo <strong>server.js<\/strong> dever\u00e1 ter a seguinte apar\u00eancia:\n<pre><code class=\"language-js\">import express from 'express';\nimport { MeiliSearch } from 'meilisearch';\nimport dotenv from 'dotenv';\ndotenv.config();\n\nconst app = express();\nconst PORT = process.env.PORT || 3000;\n\napp.set('view engine', 'ejs');\napp.use(express.static('public'));\n\napp.get('\/', async (req, res) =&gt; {\n\tconst searchValue = req.query.search;\n\tconst client = new MeiliSearch({\n\t\thost: process.env.YOUR_PROJECT_URL,\n\t\tapiKey: process.env.YOUR_SEARCH_API_KEY,\n\t});\n\tconst index = client.index('books');\n\tconst searchResults = !!searchValue && (await index.search(searchValue));\n\n\tres.render('index', {\n\t\tbooks: searchResults ? searchResults.hits : [],\n\t\tsearchValue,\n\t});\n});\n\napp.listen(PORT, () =&gt; {\n\tconsole.log(`listening at http:\/\/localhost:${PORT}`);\n});<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>Voc\u00ea pode acessar o <a href=\"https:\/\/github.com\/agencycodes\/meilisearch-demo\" target=\"_blank\" rel=\"noopener noreferrer\">c\u00f3digo completo deste tutorial no GitHub<\/a>.<\/p>\n<h2>Resumo<\/h2>\n<p>O Meilisearch \u00e9 uma excelente solu\u00e7\u00e3o de mecanismo de pesquisa que aprimora os recursos de pesquisa e a experi\u00eancia do usu\u00e1rio de um site. Sua velocidade excepcional, o algoritmo de classifica\u00e7\u00e3o focado na relev\u00e2ncia e o processo de integra\u00e7\u00e3o perfeito fazem dele uma ferramenta inestim\u00e1vel se voc\u00ea quiser otimizar a funcionalidade de pesquisa do seu site.<\/p>\n<p>O servi\u00e7o de <a href=\"https:\/\/sevalla.com\/application-hosting\/\">Hospedagem de Aplicativos<\/a> da Kinsta eleva perfeitamente o desempenho dos aplicativos com base no Meilisearch. Com uma infraestrutura robusta e ambientes de servidor simplificados, a Kinsta garante uma r\u00e1pida funcionalidade de pesquisa, aprimorando a experi\u00eancia do usu\u00e1rio. A escalabilidade da plataforma acomoda as demandas do Meilisearch, garantindo opera\u00e7\u00f5es de pesquisa confi\u00e1veis e eficientes.<\/p>\n<p><em>Em qual mecanismo de pesquisa voc\u00ea confia para seus projetos? Conte-nos na se\u00e7\u00e3o de coment\u00e1rios!<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>De plataformas de eCommerce a sistemas de gerenciamento de conte\u00fado (CMSs), aplicativos web geram e manipulam enormes quantidades de dados. Extrair informa\u00e7\u00f5es relevantes desses dados de &#8230;<\/p>\n","protected":false},"author":199,"featured_media":66184,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[992],"class_list":["post-66183","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-node-js"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Aproveite o Poder do Meilisearch para seu Aplicativo Web - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Aproveite o Poder do Meilisearch para seu Aplicativo Web\" \/>\n<meta property=\"og:description\" content=\"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstapt\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-10T15:11:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-11T09:05:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeremy Holcombe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Aproveite o Poder do Meilisearch para seu Aplicativo Web\",\"datePublished\":\"2024-01-10T15:11:02+00:00\",\"dateModified\":\"2024-01-11T09:05:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\"},\"wordCount\":1570,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\",\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\",\"url\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\",\"name\":\"Aproveite o Poder do Meilisearch para seu Aplicativo Web - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\",\"datePublished\":\"2024-01-10T15:11:02+00:00\",\"dateModified\":\"2024-01-11T09:05:08+00:00\",\"description\":\"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Node.js\",\"item\":\"https:\/\/kinsta.com\/pt\/topicos\/node-js\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Aproveite o Poder do Meilisearch para seu Aplicativo Web\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/pt\/#website\",\"url\":\"https:\/\/kinsta.com\/pt\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Solu\u00e7\u00f5es de hospedagem Premium, r\u00e1pida e segura\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/pt\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/pt\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/pt\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstapt\/\",\"https:\/\/x.com\/kinsta_pt\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"caption\":\"Jeremy Holcombe\"},\"description\":\"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jeremyholcombe\/\"],\"url\":\"https:\/\/kinsta.com\/pt\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Aproveite o Poder do Meilisearch para seu Aplicativo Web - Kinsta\u00ae","description":"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/","og_locale":"pt_PT","og_type":"article","og_title":"Aproveite o Poder do Meilisearch para seu Aplicativo Web","og_description":"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.","og_url":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstapt\/","article_published_time":"2024-01-10T15:11:02+00:00","article_modified_time":"2024-01-11T09:05:08+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.","twitter_image":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","twitter_creator":"@kinsta_pt","twitter_site":"@kinsta_pt","twitter_misc":{"Escrito por":"Jeremy Holcombe","Tempo estimado de leitura":"9 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Aproveite o Poder do Meilisearch para seu Aplicativo Web","datePublished":"2024-01-10T15:11:02+00:00","dateModified":"2024-01-11T09:05:08+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/"},"wordCount":1570,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/pt\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","inLanguage":"pt-PT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/","url":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/","name":"Aproveite o Poder do Meilisearch para seu Aplicativo Web - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","datePublished":"2024-01-10T15:11:02+00:00","dateModified":"2024-01-11T09:05:08+00:00","description":"Libere recursos de pesquisa extremamente r\u00e1pidos e aprimore a experi\u00eancia do usu\u00e1rio. Este guia explicar\u00e1 como integrar o Meilisearch em seus aplicativos.","breadcrumb":{"@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/pt\/blog\/meilisearch\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#primaryimage","url":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","contentUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/meilisearch_2.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/pt\/blog\/meilisearch\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/pt\/"},{"@type":"ListItem","position":2,"name":"Node.js","item":"https:\/\/kinsta.com\/pt\/topicos\/node-js\/"},{"@type":"ListItem","position":3,"name":"Aproveite o Poder do Meilisearch para seu Aplicativo Web"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/pt\/#website","url":"https:\/\/kinsta.com\/pt\/","name":"Kinsta\u00ae","description":"Solu\u00e7\u00f5es de hospedagem Premium, r\u00e1pida e segura","publisher":{"@id":"https:\/\/kinsta.com\/pt\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/pt\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/pt\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/pt\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstapt\/","https:\/\/x.com\/kinsta_pt","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","caption":"Jeremy Holcombe"},"description":"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.","sameAs":["https:\/\/www.linkedin.com\/in\/jeremyholcombe\/"],"url":"https:\/\/kinsta.com\/pt\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/66183","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/users\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/comments?post=66183"}],"version-history":[{"count":8,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/66183\/revisions"}],"predecessor-version":[{"id":66323,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/66183\/revisions\/66323"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/en"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/fr"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/pt"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/de"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/es"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/translations\/nl"},{"href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/66183\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/media\/66184"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/media?parent=66183"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/tags?post=66183"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/topic?post=66183"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}