{"id":49591,"date":"2022-05-20T09:23:24","date_gmt":"2022-05-20T12:23:24","guid":{"rendered":"https:\/\/kinsta.com\/pt\/?p=49591&#038;post_type=knowledgebase&#038;preview_id=49591"},"modified":"2025-10-01T17:04:57","modified_gmt":"2025-10-01T20:04:57","slug":"o-que-e-express-js","status":"publish","type":"post","link":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/","title":{"rendered":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber"},"content":{"rendered":"<p>Express.js \u00e9 o framework backend mais popular para o <a href=\"https:\/\/kinsta.com\/knowledgebase\/what-is-node-js\/\" rel=\"noopener\">Node.js<\/a>, e faz parte do <a href=\"https:\/\/kinsta.com\/knowledgebase\/what-is-javascript\/\" rel=\"noopener\">ecossistema JavaScript<\/a>.<\/p>\n<p>Projetado para criar aplicativos da web de p\u00e1gina \u00fanica, v\u00e1rias p\u00e1ginas e h\u00edbridos, ele tamb\u00e9m se tornou o padr\u00e3o para desenvolver aplicativos de backend usando Node.js e \u00e9 a parte de backend do que \u00e9 conhecido como pilha MEVN.<\/p>\n<p>O MEVN \u00e9 uma pilha de software\u00a0<a href=\"https:\/\/www.guru99.com\/interactive-javascript-tutorials.html\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">JavaScript<\/a> gratuito e de c\u00f3digo aberto para construir sites din\u00e2micos e aplicativos web, com os seguintes componentes:<\/p>\n<ol>\n<li><strong>MongoDB:<\/strong> <a href=\"https:\/\/kinsta.com\/pt\/blog\/mongodb-vs-mysql\/\">MongoDB<\/a> \u00e9 o banco de dados padr\u00e3o NoSQL<\/li>\n<li><strong>Express.js:<\/strong> A framework padr\u00e3o de aplicativos web para construir aplicativos web<\/li>\n<li><strong>Vue.js:<\/strong> A framework progressivo JavaScript usado para construir <a href=\"https:\/\/kinsta.com\/pt\/blog\/backend-vs-frontend\/\">aplicativos web\u00a0de frontend<\/a><\/li>\n<li><strong>Node.js:<\/strong> Mecanismo JavaScript usado para aplicativos escal\u00e1veis do lado do servidor e de rede<\/li>\n<\/ol>\n\n<p>Neste guia, vamos descobrir as principais funcionalidades da framework Express.js e como criar o primeiro aplicativo.<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>O que \u00e9 o Express.js?<\/h2>\n<p>O Express.js, \u00e0s vezes tamb\u00e9m referido como &#8220;Express&#8221;, \u00e9 um <a href=\"https:\/\/kinsta.com\/pt\/blog\/bibliotecas-javascript\/\" target=\"_blank\" rel=\"noopener noreferrer\">framework backend<\/a> minimalista, r\u00e1pido e parecido com o Sinatra Node.js que fornece funcionalidades robustas e ferramentas para desenvolver aplicativos de backend escal\u00e1veis. Ele fornece o sistema de roteamento e recursos simplificados para estender o framework, desenvolvendo componentes e partes mais poderosas, dependendo dos casos de uso do seu aplicativo.<\/p>\n<figure id=\"attachment_120627\" aria-describedby=\"caption-attachment-120627\" style=\"width: 900px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-120627 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/04\/express-1.png\" alt=\"Logo oficial Express.js\" width=\"900\" height=\"325\"><figcaption id=\"caption-attachment-120627\" class=\"wp-caption-text\">Logo oficial Express.js<\/figcaption><\/figure>\n<p>A framework fornece um conjunto de ferramentas para aplicativos web, <a href=\"https:\/\/kinsta.com\/pt\/blog\/fazer-menos-solicitacoes-http\/\" rel=\"noopener\">solicita\u00e7\u00f5es e respostas HTTP<\/a>, roteamento e middleware para constru\u00e7\u00e3o e implanta\u00e7\u00e3o de aplicativos em larga escala e prontas para a empresa.<\/p>\n<p>Ele tamb\u00e9m fornece uma ferramenta de interface de linha de comando (CLI) chamada <a href=\"https:\/\/kinsta.com\/pt\/blog\/como-instalar-o-node-js\/#check-and-update-npm-version\" rel=\"noopener\">Node Package Manager<\/a> (NPM), onde os desenvolvedores podem fazer o c\u00f3digo-fonte para os pacotes desenvolvidos. Ele tamb\u00e9m for\u00e7a os desenvolvedores a seguirem o princ\u00edpio Don&#8217;t Repeat Yourself (DRY).<\/p>\n<p>O princ\u00edpio DRY visa reduzir a repeti\u00e7\u00e3o de padr\u00f5es de software, atrav\u00e9s da sua substitui\u00e7\u00e3o por abstra\u00e7\u00f5es ou da normaliza\u00e7\u00e3o dos dados para evitar redund\u00e2ncia.<\/p>\n<p>\u00a0<\/p>\n<h2>Para que o Express.js \u00e9 usado?<\/h2>\n<p>O Express.js \u00e9 usado para uma grande variedade de coisas no ecossistema JavaScript\/Node.js &#8211; voc\u00ea pode desenvolver aplicativos, <a href=\"https:\/\/kinsta.com\/knowledgebase\/api-endpoint\/\" rel=\"noopener\">endpoints API<\/a>, sistemas de roteamento e frameworks com ele.<\/p>\n<p>Abaixo est\u00e1 uma lista de apenas alguns dos tipos de aplicativos que voc\u00ea pode construir com o Express.js.<\/p>\n<h3>Aplicativos de p\u00e1gina \u00fanica<\/h3>\n<p>Aplicativos de p\u00e1gina \u00fanica (SPA) representam a moderna abordagem ao desenvolvimento de aplicativos na qual o aplicativo inteiro \u00e9 abordado em uma \u00fanica p\u00e1gina de \u00edndice. Express.js \u00e9 uma excelente framework para criar uma API para se conectar a esses aplicativos SPA e servir os dados de forma consistente. Alguns exemplos de aplicativos de p\u00e1gina \u00fanica s\u00e3o Gmail, Google Maps, Airbnb, Netflix, Pinterest, Paypal e muitos outros. As empresas usam SPAs para criar uma experi\u00eancia suave e escal\u00e1vel.<\/p>\n<h3>Ferramentas de colabora\u00e7\u00e3o em tempo real<\/h3>\n<p><a href=\"https:\/\/kinsta.com\/pt\/blog\/microsoft-teams-vs-slack\/\" rel=\"noopener\">Ferramentas de colabora\u00e7\u00e3o<\/a> est\u00e3o aqui para facilitar a forma como as empresas trabalham e colaboram diariamente, e com o Express.js, voc\u00ea pode desenvolver aplicativos de colabora\u00e7\u00e3o e de rede em tempo real com facilidade.<\/p>\n<p>Al\u00e9m disso, o framework \u00e9 usado para desenvolver aplicativos em tempo real, como aplicativos de chat e painel de controle, onde se torna simples integrar o WebSocket ao framework.<\/p>\n<p>Express.js lida com a parte de roteamento e middleware do processo, permitindo que os desenvolvedores se concentrem na l\u00f3gica comercial vital desses recursos em tempo real ao desenvolver ferramentas colaborativas em tempo real.<\/p>\n<h3>Aplicativos de streaming<\/h3>\n<p>Aplicativos de streaming em tempo real como o Netflix s\u00e3o complexas com muitas camadas de fluxos de dados. Para desenvolver tal aplicativo, voc\u00ea precisa de uma framework s\u00f3lida para lidar com fluxos de dados ass\u00edncronos de forma eficiente.<\/p>\n<p>\u00c9 uma framework ideal para construir e implantar aplicativos de streaming prontas para a empresa e escal\u00e1veis.<\/p>\n<h3>Aplicativos fintech<\/h3>\n<p>O termo fintech refere-se a um programa de computador e outras tecnologias usadas para apoiar ou habilitar servi\u00e7os banc\u00e1rios e financeiros. A cria\u00e7\u00e3o de aplicativos fintech \u00e9 atualmente a <a href=\"https:\/\/www.globenewswire.com\/en\/news-release\/2021\/09\/21\/2300294\/28124\/en\/Insights-on-the-FinTech-Global-Market-to-2026-Growing-Adoption-of-Non-Bank-Option-to-Manage-Money-is-Driving-Growth.html\">tend\u00eancia da ind\u00fastria<\/a> e o Express.js \u00e9 a framework preferida para criar aplicativos fintech altamente escal\u00e1veis.<\/p>\n<p>Se voc\u00ea est\u00e1 pensando em construir um aplicativo fintech com alto volume de usu\u00e1rios e transa\u00e7\u00f5es, ent\u00e3o voc\u00ea estar\u00e1 se juntando a empresas como <a href=\"https:\/\/kinsta.com\/pt\/blog\/alternativas-paypal\/\">Paypal<\/a> e Capital One no desenvolvimento e implanta\u00e7\u00e3o do seu aplicativo usando o Express.js.<\/p>\n<h2>Porque voc\u00ea deve usar Express.js<\/h2>\n<p>H\u00e1 v\u00e1rias raz\u00f5es pelas quais voc\u00ea deve considerar o uso do Express.js para seu pr\u00f3ximo projeto, desde uma E\/S mais r\u00e1pida para solicita\u00e7\u00f5es e respostas mais r\u00e1pidas at\u00e9 seu sistema de uma \u00fanica linha e processos ass\u00edncronos. Ele tamb\u00e9m usa a framework MVC para simplificar as manipula\u00e7\u00f5es de dados e sistemas de roteamento. Vamos dar uma olhada mais detalhada em algumas das principais raz\u00f5es que voc\u00ea deve considerar para usar o Express.js.<\/p>\n<h3>Flex\u00edvel e r\u00e1pido<\/h3>\n<div class=\"w-full border-b border-black\/10 dark:border-gray-900\/50 text-gray-800 dark:text-gray-100 group bg-gray-50 dark:bg-[#444654]\">\n<div class=\"text-base gap-4 md:gap-6 m-auto md:max-w-2xl lg:max-w-2xl xl:max-w-3xl p-4 md:py-6 flex lg:px-0\">\n<div class=\"relative flex w-[calc(100%-50px)] flex-col gap-1 md:gap-3 lg:w-[calc(100%-115px)]\">\n<div class=\"flex flex-grow flex-col gap-3\">\n<div class=\"min-h-[20px] flex flex-col items-start gap-4 whitespace-pre-wrap\">\n<div class=\"markdown prose w-full break-words dark:prose-invert dark\">\n<p>O Express.js \u00e9 muito f\u00e1cil de usar e flex\u00edvel, e \u00e9 mais r\u00e1pido do que qualquer outro framework Node.js. Um framework minimalista, ele oferece desenvolvimento r\u00e1pido de aplicativos e alivia o estresse de dominar as muitas partes diferentes de um framework maior. Ele tamb\u00e9m fornece recursos ricos, como um excelente sistema de roteamento, middlewares e negocia\u00e7\u00e3o de conte\u00fado desde o in\u00edcio.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"flex justify-between\">\n<div class=\"text-gray-400 flex self-end lg:self-center justify-center mt-2 gap-3 md:gap-4 lg:gap-1 lg:absolute lg:top-0 lg:translate-x-full lg:right-0 lg:mt-0 lg:pl-2 visible\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<h3>Parte do MEAN Stack<\/h3>\n<p>Express.js \u00e9 a framework de escolha em cada pilha representada com o E em qualquer pilha, como MERN, MEAN, e assim por diante. Ele tamb\u00e9m pode ser facilmente integrado em qualquer pilha ou tecnologia para mostrar como a framework \u00e9 vital no processo de desenvolvimento da pilha MEAN.<\/p>\n<p>Al\u00e9m disso, ele pode se conectar eficientemente com um sistema de gerenciamento do banco de dados mais robusto do que o <a href=\"https:\/\/kinsta.com\/knowledgebase\/what-is-mysql\/\" target=\"_blank\" rel=\"noopener noreferrer\">MySQL<\/a> convencional e fornece um processo de desenvolvimento cont\u00ednuo atrav\u00e9s de cada pilha. Esta combina\u00e7\u00e3o de funcionalidades torna o Express.js muito popular entre os desenvolvedores MEAN.<\/p>\n<h3>Escalabilidade<\/h3>\n<p>Express.js provou ser muito escal\u00e1vel ao longo dos anos devido ao n\u00famero de grandes empresas que utilizam a framework em seus servidores diariamente.<\/p>\n<p>Ele lida com as solicita\u00e7\u00f5es e respostas dos usu\u00e1rios de forma eficiente e requer pouca ou nenhuma configura\u00e7\u00e3o extra ao desenvolver um aplicativo web de larga escala.<\/p>\n<p>Possui excelentes m\u00f3dulos, pacotes e recursos adicionais, ajudando os desenvolvedores a criar aplicativos web confi\u00e1veis e escal\u00e1veis.<\/p>\n<h3>Suportado pelo Google V8 Engine<\/h3>\n<p>Express.js suporta muitos pacotes do Google V8 Engine, tornando o framework muito poderoso para construir e implantar aplicativos em tempo real, colaborativas e baseadas em rede a n\u00edvel empresarial.<\/p>\n<p>O Google V8 Engine \u00e9 um poderoso mecanismo JavaScript e WebAssembly de c\u00f3digo aberto que suporta velocidade e escalabilidade para aplicativos complexos e intensivos. O uso de um pacote que usa o mecanismo Google V8 melhorar\u00e1 muito o desempenho e a escalabilidade\u00a0do seu\u00a0aplicativo de backend.<\/p>\n<h3>Suporte da comunidade<\/h3>\n<p>Como a framework backend mais popular do Node.js, ela tem o maior suporte e muitos recursos e pacotes disponibilizados pela comunidade para qualquer problema de desenvolvimento. O suporte do Google tamb\u00e9m \u00e9 consider\u00e1vel, tornando a framework popular entre os desenvolvedores do Node.js. Sendo de c\u00f3digo aberto, oferece aos desenvolvedores a oportunidade de criar pacotes extens\u00edveis e recursos para facilitar o desenvolvimento, n\u00e3o apenas para eles mesmos, mas tamb\u00e9m para todos os outros usu\u00e1rios do Express.js.<\/p>\n<h3>Poderoso sistema de roteamento<\/h3>\n<p>O framework possui o sistema de roteamento mais poderoso e robusto constru\u00eddo fora da caixa que ajuda seu aplicativo responder a uma solicita\u00e7\u00e3o de cliente via um endpoint espec\u00edfico.<\/p>\n<p>Com o sistema de roteamento do Express.js, voc\u00ea pode dividir seu sistema de roteamento volumoso em arquivos gerenci\u00e1veis usando a inst\u00e2ncia de roteador do framework.<\/p>\n<p>O sistema de roteamento do Express.js \u00e9 \u00fatil na gest\u00e3o da framework do seu aplicativo, agrupando diferentes rotas em uma \u00fanica pasta\/diret\u00f3rio.<\/p>\n<p>Os desenvolvedores criam um c\u00f3digo mais f\u00e1cil de manter agrupando fun\u00e7\u00f5es no roteador Express.js e evitando a repeti\u00e7\u00e3o.<\/p>\n<h3>Middleware<\/h3>\n<p>Express.js \u00e9 uma framework que compreende uma s\u00e9rie de middleware para criar um processo de desenvolvimento cont\u00ednuo.<\/p>\n<p>Middlewares s\u00e3o c\u00f3digos que executam antes de uma <a href=\"https:\/\/kinsta.com\/pt\/blog\/fazer-menos-solicitacoes-http\/\">solicita\u00e7\u00e3o HTTP<\/a> chegar ao manipulador de rotas, ou antes, de um cliente receber uma resposta, dando \u00e0 framework a capacidade de executar um script t\u00edpico antes ou depois de uma solicita\u00e7\u00e3o do cliente.<\/p>\n<p>Com o middleware, os desenvolvedores podem conectar scripts para interceptar o fluxo do aplicativo, por exemplo, os desenvolvedores podem usar o middleware para verificar se um usu\u00e1rio est\u00e1 logado ou desconectado com sucesso.<\/p>\n<h2>Como o Express.js funciona<\/h2>\n<p>O Express.js usa um modelo cliente-servidor para aceitar solicita\u00e7\u00f5es do usu\u00e1rio e enviar respostas ao cliente, portanto, seu comportamento n\u00e3o \u00e9 muito diferente de outros frameworks populares <a href=\"https:\/\/kinsta.com\/knowledgebase\/what-is-laravel\/\">como o Laravel<\/a>.<\/p>\n<p>Quando um usu\u00e1rio envia uma solicita\u00e7\u00e3o do seu <a href=\"https:\/\/kinsta.com\/pt\/blog\/navegadores-mais-seguros\/\" rel=\"noopener\">navegador da internet<\/a> digitando um endere\u00e7o de site, o navegador envia uma solicita\u00e7\u00e3o HTTP para o aplicativo\/servidor (muitos aplicativos criados que usam o Express.js s\u00e3o <a href=\"https:\/\/kinsta.com\/blog\/google-cloud-hosting\/\" rel=\"noopener\">hospedadas em algum lugar na nuvem<\/a>).<\/p>\n<p>O servidor receber\u00e1 a solicita\u00e7\u00e3o atrav\u00e9s de uma de suas rotas e a processar\u00e1 usando o controlador que corresponda \u00e0 rota solicitada.<\/p>\n<p>Ap\u00f3s o processamento, o servidor enviar\u00e1 uma resposta de volta ao cliente <a href=\"https:\/\/kinsta.com\/pt\/blog\/http3\/\" rel=\"noopener\">usando HTTP<\/a>, uma vez que \u00e9 um protocolo de comunica\u00e7\u00e3o &#8220;back-and-forth&#8221;.<\/p>\n<p>A resposta retornada ao cliente pode ser um texto padr\u00e3o, uma p\u00e1gina HTML din\u00e2mica que o navegador ir\u00e1 processar e exibir uma bela p\u00e1gina de internet, ou dados JSON que os <a href=\"https:\/\/kinsta.com\/pt\/blog\/desenvolvedor-backend\/\">desenvolvedores do frontend<\/a> ir\u00e3o lidar para exibir informa\u00e7\u00f5es na p\u00e1gina da internet.<\/p>\n<p>Vamos criar um servidor simples para ouvir os pedidos recebidos de uma <a href=\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-uma-url\/\">URL<\/a> espec\u00edfica e n\u00famero de porta com o Express.js:<\/p>\n<pre><code class=\"language-js\">const express = require('express')\nconst app = express()\nconst port = 4000\n\napp.get('\/', (request, response) =&gt; {\n  response.send('Testing Hello World!')\n})\n\napp.listen(port, () =&gt; {\n  console.log(`Test app listening at http:\/\/localhost:${port}`)\n})<\/code><\/pre>\n<p>Esse \u00e9 um servidor Express.js simples que ouvir\u00e1 as solicita\u00e7\u00f5es recebidas em <a href=\"http:\/\/localhost:4000\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">http:\/\/localhost:4000\/<\/a> e retornar\u00e1 uma resposta de texto de &#8220;<strong>Testing Hello World!<\/strong>&#8220;.<\/p>\n<h2>Como criar um aplicativo Express.js<\/h2>\n<p>Agora, vamos criar um aplicativo demo do mundo real usando o novo Express.js 5.0. Para come\u00e7ar, crie um <strong>diret\u00f3rio<\/strong> para o seu novo aplicativo e instale os seguintes pacotes:<\/p>\n<pre><code class=\"language-bash\">mkdir first-express-app\ncd first-express-app\n\nnpm install express@5.0.0-alpha.8 --save<\/code><\/pre>\n<p>Em seguida, crie um arquivo index.js no diret\u00f3rio raiz e cole nele o seguinte:<\/p>\n<pre><code class=\"language-bash\">touch index.js<\/code><\/pre>\n<p>Ap\u00f3s configurar o servidor como demonstrado acima, criaremos um array <strong>Todos<\/strong> que cont\u00e9m todos os nossos todos a serem devolvidos ao usu\u00e1rio, dependendo do endpoint chamado. Adicione o seguinte c\u00f3digo ao arquivo <code>index.js<\/code>:<\/p>\n<pre><code class=\"language-js\">const express = require(\"express\");\nconst app = express();\nconst port = 3000;\napp.listen(port, () =&gt; {\n  console.log(`Test app listening at http:\/\/localhost:${port}`)\n})\nconst todos = [\n  {\n    title: \"Todo 1\",\n    desc: \"This is my first Todo\",\n    completed: true,\n  },\n  {\n    title: \"Todo 2\",\n    desc: \"This is my second Todo\",\n    completed: true,\n  },\n\n  {\n    title: \"Todo 3\",\n    desc: \"This is my third Todo\",\n    completed: true,\n  },\n\n  {\n    title: \"Todo 4\",\n    desc: \"This is my fourth Todo\",\n    completed: true,\n  },\n\n  {\n    title: \"Todo 5\",\n    desc: \"This is my fifth Todo\",\n    completed: true,\n  },\n];\n\/\/ Data source ends here<\/code><\/pre>\n<p>A seguir, criaremos um endpoint para recuperar todo o <code>Todos<\/code> armazenado em nosso servidor:<\/p>\n<pre><code class=\"language-js\">app.get(\"\/todos\", (request, response) =&gt; {\n  response.status(200).json(todos);\n});<\/code><\/pre>\n<p>Em seguida, um endpoint para recuperar um \u00fanico <strong>Todo<\/strong> baseado na <b>ID <\/b>do Todo:<\/p>\n<pre><code class=\"language-js\">app.get(\"\/todos\/:id\", (request, response) =&gt; {\n  response\n    .status(200)\n    .json({ data: todos.find((todo) =&gt; todo.id === request.params.id) });\n});<\/code><\/pre>\n<p>Agora, um endpoint para armazenar um novo <code>todo<\/code>:<\/p>\n<pre><code class=\"language-js\">app.post(\"\/todos\", (request, response) =&gt; {\n  todos.push(request.body);\n  response.status(201).json({ msg: \"Todo created successfully\" });\n});<\/code><\/pre>\n<p>A seguir, um endpoint para atualizar um <code>todo<\/code> existente com o <code>ID<\/code>:<\/p>\n<pre><code class=\"language-js\">app.put(\"\/todos\/:id\", (request, response) =&gt; {\n  const todo = todos.find((todo) =&gt; todo.id === request.params.id);\n  if (todo) {\n    const { title, desc, completed } = request.body;\n    todo.title = title;\n    todo.desc = desc;\n    todo.completed = completed;\n    response.status(200).json({ msg: \"Todo updated successfully\" });\n    return;\n  }\n  response.status(404).json({ msg: \"Todo not found\" });\n});<\/code><\/pre>\n<p>Finalmente, criaremos um endpoint para excluir um \u00fanico <code>todo<\/code> baseado no <code>ID<\/code>:<\/p>\n<pre><code class=\"language-js\">app.delete(\"\/todos\/:id\", (request, response) =&gt; {\n  const todoIndex = todos.findIndex((todo) =&gt; (todo.id = request.params.id));\n  if (todoIndex) {\n    todos.splice(todoIndex, 1);\n    response.status(200).json({ msg: \"Todo deleted successfully\" });\n  }\n  response.status(404).json({ msg: \"Todo not found\" });\n});<\/code><\/pre>\n<p>Este trecho de c\u00f3digo mostra como implementar uma funcionalidade DELETE no Express.js. Ele coleta o ID Todo atrav\u00e9s de par\u00e2metros e procura no array pelo ID correspondente e o apaga.<\/p>\n<h3>Testando o aplicativo Express.js<\/h3>\n<p>Teste seu novo aplicativo Express.js. Execute o seguinte comando para testar sua API REST rec\u00e9m-desenvolvida com o <a href=\"https:\/\/www.postman.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Postman<\/a> e certifique-se de que ela tenha os dados corretos.<\/p>\n<pre><code class=\"language-bash\">node index.js<\/code><\/pre>\n<p>Voc\u00ea pode baixar o Postman no site oficial e executar o teste abaixo. Para saber mais, recomendamos a cria\u00e7\u00e3o de outras funcionalidades seguindo a abordagem que descrevemos no artigo e ampliar seu conhecimento do Express.js.<\/p>\n<figure id=\"attachment_120628\" aria-describedby=\"caption-attachment-120628\" style=\"width: 900px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-120628 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2022\/04\/test_express.png\" alt=\"Resultado do Express.js API\" width=\"900\" height=\"622\"><figcaption id=\"caption-attachment-120628\" class=\"wp-caption-text\">Resultado do Express.js API<\/figcaption><\/figure>\n\n<h2>Resumo<\/h2>\n<p>Express.js \u00e9 a framework mais popular no ecossistema do Node.js, e n\u00e3o \u00e9 dif\u00edcil ver o porqu\u00ea. Ele oferece uma ampla gama de vantagens e funcionalidades das quais se pode se beneficiar.<\/p>\n<p>A curva de aprendizado suave do Express.js o torna muito simples e f\u00e1cil de come\u00e7ar. Ele abstrai funcionalidades desnecess\u00e1rias ou indesejadas de aplicativos web e fornece a voc\u00ea uma fina camada de funcionalidades essenciais que permitem flexibilidade.<\/p>\n<p>Al\u00e9m disso, como a framework do Express.js \u00e9 a base do <a href=\"https:\/\/kinsta.com\/pt\/blog\/como-depurar-codigo-no-node-js\/\" target=\"_blank\" rel=\"noopener noreferrer\">Node.js<\/a>, conhecer o Express.js automaticamente d\u00e1 a voc\u00ea uma boa compreens\u00e3o de outras frameworks populares. Este conhecimento pode ajud\u00e1-lo a tomar decis\u00f5es vitais na constru\u00e7\u00e3o da l\u00f3gica do neg\u00f3cio, qual framework usar al\u00e9m do Express.js, e quando usar pacotes padr\u00e3o ou de usu\u00e1rios.<\/p>\n<p>Quais s\u00e3o os seus pr\u00f3ximos projetos com o Express.js? Escreva para n\u00f3s na se\u00e7\u00e3o de coment\u00e1rios.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Express.js \u00e9 o framework backend mais popular para o Node.js, e faz parte do ecossistema JavaScript. Projetado para criar aplicativos da web de p\u00e1gina \u00fanica, v\u00e1rias &#8230;<\/p>\n","protected":false},"author":193,"featured_media":49592,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1017],"class_list":["post-49591","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-linguagens-desenvolvimento-web"],"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>O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber<\/title>\n<meta name=\"description\" content=\"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.\" \/>\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\/o-que-e-express-js\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber\" \/>\n<meta property=\"og:description\" content=\"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\" \/>\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=\"2022-05-20T12:23:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-01T20:04:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.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=\"Solomon Eseme\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@kaperskyguru\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_pt\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Solomon Eseme\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\"},\"author\":{\"name\":\"Solomon Eseme\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/person\/51c9c77fa35cf1ef9a46308358441ab2\"},\"headline\":\"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber\",\"datePublished\":\"2022-05-20T12:23:24+00:00\",\"dateModified\":\"2025-10-01T20:04:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\"},\"wordCount\":2201,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg\",\"inLanguage\":\"pt-PT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\",\"url\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\",\"name\":\"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/pt\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg\",\"datePublished\":\"2022-05-20T12:23:24+00:00\",\"dateModified\":\"2025-10-01T20:04:57+00:00\",\"description\":\"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Linguagens de Desenvolvimento Web\",\"item\":\"https:\/\/kinsta.com\/pt\/topicos\/linguagens-desenvolvimento-web\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber\"}]},{\"@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\/51c9c77fa35cf1ef9a46308358441ab2\",\"name\":\"Solomon Eseme\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/kinsta.com\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1c701993f8ff8c8df2a4c5664834a4e5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1c701993f8ff8c8df2a4c5664834a4e5?s=96&d=mm&r=g\",\"caption\":\"Solomon Eseme\"},\"description\":\"I am a Software Engineer and Content Creator who is geared toward building high-performing and innovative products following best practices and industry standards. I also love writing about it at Masteringbackend.com. Follow me on Twitter, LinkedIn, and About Me\",\"sameAs\":[\"https:\/\/masteringbackend.com\",\"https:\/\/linkedin.com\/in\/solomoneseme\",\"https:\/\/x.com\/kaperskyguru\"],\"url\":\"https:\/\/kinsta.com\/pt\/blog\/author\/solomoneseme\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber","description":"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.","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\/o-que-e-express-js\/","og_locale":"pt_PT","og_type":"article","og_title":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber","og_description":"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.","og_url":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstapt\/","article_published_time":"2022-05-20T12:23:24+00:00","article_modified_time":"2025-10-01T20:04:57+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","type":"image\/jpeg"}],"author":"Solomon Eseme","twitter_card":"summary_large_image","twitter_description":"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.","twitter_image":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","twitter_creator":"@kaperskyguru","twitter_site":"@kinsta_pt","twitter_misc":{"Escrito por":"Solomon Eseme","Tempo estimado de leitura":"11 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/"},"author":{"name":"Solomon Eseme","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/person\/51c9c77fa35cf1ef9a46308358441ab2"},"headline":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber","datePublished":"2022-05-20T12:23:24+00:00","dateModified":"2025-10-01T20:04:57+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/"},"wordCount":2201,"publisher":{"@id":"https:\/\/kinsta.com\/pt\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","inLanguage":"pt-PT"},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/","url":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/","name":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber","isPartOf":{"@id":"https:\/\/kinsta.com\/pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","datePublished":"2022-05-20T12:23:24+00:00","dateModified":"2025-10-01T20:04:57+00:00","description":"Express.js \u00e9 a framework backend mais popular para o Node.js. Aprenda mais sobre este importante componente do ecossistema JavaScript.","breadcrumb":{"@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/"]}]},{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#primaryimage","url":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","contentUrl":"https:\/\/kinsta.com\/pt\/wp-content\/uploads\/sites\/3\/2022\/05\/what-is-express-js-1.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/pt\/blog\/o-que-e-express-js\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/pt\/"},{"@type":"ListItem","position":2,"name":"Linguagens de Desenvolvimento Web","item":"https:\/\/kinsta.com\/pt\/topicos\/linguagens-desenvolvimento-web\/"},{"@type":"ListItem","position":3,"name":"O Que \u00e9 Express.js? Tudo o Que Voc\u00ea Precisa Saber"}]},{"@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\/51c9c77fa35cf1ef9a46308358441ab2","name":"Solomon Eseme","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/kinsta.com\/pt\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1c701993f8ff8c8df2a4c5664834a4e5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1c701993f8ff8c8df2a4c5664834a4e5?s=96&d=mm&r=g","caption":"Solomon Eseme"},"description":"I am a Software Engineer and Content Creator who is geared toward building high-performing and innovative products following best practices and industry standards. I also love writing about it at Masteringbackend.com. Follow me on Twitter, LinkedIn, and About Me","sameAs":["https:\/\/masteringbackend.com","https:\/\/linkedin.com\/in\/solomoneseme","https:\/\/x.com\/kaperskyguru"],"url":"https:\/\/kinsta.com\/pt\/blog\/author\/solomoneseme\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/49591","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\/193"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/comments?post=49591"}],"version-history":[{"count":14,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/49591\/revisions"}],"predecessor-version":[{"id":71343,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/posts\/49591\/revisions\/71343"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/en"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/es"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/translations\/jp"},{"href":"https:\/\/kinsta.com\/pt\/wp-json\/kinsta\/v1\/posts\/49591\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/media\/49592"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/media?parent=49591"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/tags?post=49591"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/pt\/wp-json\/wp\/v2\/topic?post=49591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}