Como criar rotas no lado do servidor no nó.JS

Como criar rotas no lado do servidor no nó.JS
Roteamento é o processo usado no lado do servidor para responder às solicitações do cliente. Ele define o terminal (Uris) no back -end do aplicativo criado. Também podemos definir o roteamento como o “expressar”Objetos de aplicativos usados ​​para corresponder aos métodos HTTP. Seu aplicativo “escuta”As solicitações que correspondem ao método ou rotas fornecidas e depois chama a função de retorno de chamada especificado quando encontrar um.

Este artigo demonstrará como criar as rotas no lado do servidor no nó.JS. Além disso, o procedimento para criar pontos de extremidade da API com base nas operações do CRUD também será fornecido. Então vamos começar!

Como criar rotas no lado do servidor no nó.JS

Já criamos um aplicativo simples do sistema de gerenciamento de funcionários com o React.JS front -end, nó.JS Server e construiu uma conexão entre o servidor e o banco de dados MongoDB. Depois de fazer isso, adicionamos dois modelos: “funcionário.modelo" e "designação.modelo”Com seu esquema relacionado. Agora criaremos algumas rotas para apresentar as informações dos modelos do banco de dados MongoDB usando o “Mangusto" biblioteca.

O próximo passo é adicionar as rotas da API para utilizá -las para executar as operações do CRUD. Vamos criar um “designação" e um "funcionário”Rota para demonstração. Para fazer isso, em primeiro lugar, criaremos um novo “rotaPasta no lado do servidor:

Vamos citar a pasta recém -criada como “rotas”:

Em seguida, clique no “rotasPasta e selecione a “Novo arquivoOpção para criar um “funcionário.JS“Arquivo de rota:

Ao utilizar o mesmo método, criaremos outro arquivo de rota, “designação.JS”Na pasta Rotes:

Como você pode ver, criamos dois arquivo de rotas, “funcionário.JS" e "designação.arquivo" no "rotas" pasta:

No terminal, execute o seguinte comando para configurar o ROUTER DE REACTER Como é a biblioteca padrão que pode ser usada para roteamento:

> npm install react-router-dom

Depois de fazer isso, adicione a seguinte linha no seu projeto “Aplicativo.JS" arquivo:

importar BrowRrouter como roteador, rota de "React-Router-Dom";

Na próxima etapa, abra o “funcionário.JS”AD AD ADCIMENTO ADICIONE O CÓDIGO DE ACONDERENTE NELE:

Neste código, adicionamos dois pontos de extremidade. O primeiro endpoint lidará com o http recebido “PEGAR”Solicitações no“/funcionários/”Caminho da URL. Em seguida, o “Funcionário.encontrar()”É chamado o método para obter a lista de funcionários do banco de dados MongoDB. Este método find () retornará uma promessa e o resultado será devolvido no formato JSON.

O segundo endpoint que adicionamos em nosso “funcionário“Arquivo de rota, lidará com o http recebido“PUBLICAR”Solicitações no caminho“/funcionários/add/url. O novo nome do funcionário será considerado como parte do pedido. Depois de receber o novo nome do funcionário, uma nova instância do funcionário será criada e, em seguida, a função "Save ()" salvará o novo registro do funcionário no banco de dados MongoDBB. Se a operação especificada for concluída com sucesso, então o “Funcionário adicionado!”String será devolvida:

Const Router = requer ('Express').Roteador();
Deixe o funcionário = exigir ('… /modelos /funcionário.modelo');
roteador.rota('/').get ((req, res) =>
Funcionário.encontrar()
.então (funcionários => res.JSON (funcionários))
.Catch (err => res.status (400).json ('erro:' + err));
);
roteador.rota ('/add').post ((req, res) =>
const Employeename = req.corpo.nome do empregado;
const newEmployee = new Funcionário (Employeename);
novo empregado.salvar()
.então (() => res.JSON ('funcionário adicionado!'))
.Catch (err => res.status (400).json ('erro:' + err));
);
módulo.exports = roteador;

Em seguida, abra o “designação.JS”Arquivo para criar as rotas de designações:

Agora, em primeiro lugar, adicionaremos os mesmos pontos de extremidade que adicionamos no “funcionários.JS”Arquivo de rotas. No entanto, desta vez vamos quebrar todos os três campos “nome do empregado","designação", e "dataA partir dos dados enviados:

Const Router = requer ('Express').Roteador();
Deixe a designação = requer ('… /modelos /designação.modelo');
roteador.rota('/').get ((req, res) =>
Designação.encontrar()
.então (designações => res.JSON (designações))
.Catch (err => res.status (400).json ('erro:' + err));
);
roteador.rota ('/add').post ((req, res) =>
const Employeename = req.corpo.nome do empregado
const designação = req.corpo.designação;
const data = data.Parse (Req.corpo.data);
const newDesignation = nova designação (
nome do empregado,
designação,
data,
);
NewDesignation.salvar()
.então (() => res.JSON (Designação adicionada!'))
.Catch (err => res.status (400).json ('erro:' + err));
);
módulo.exports = roteador;

Os terminais adicionados anteriormente podem ser utilizados para ler e criar os itens de designação. Agora, criaremos duas rotas para as operações RUD restantes, que são “atualizar" e "excluir”.

No código abaixo do rumo “/:eu ia”Get Endpoint retornará um item de designação que terá o item especificado e será excluído usando o“excluir()”Função. O "/atualização/: id”O Post Endpoint atualizará os itens de designação existentes. Para o terminal de atualização, em primeiro lugar, recuperaremos o item de designação existente do banco de dados MongoDB com base no ID especificado. Depois de fazer isso, definiremos os valores da propriedade de designação, como “nome do empregado","designação", e "data”Para os valores recebidos no corpo de solicitação. Por fim, chamaremos o “designação.salvar()”Método para salvar o objeto de designação atualizado em nosso banco de dados:

roteador.rota ('/: id').get ((req, res) =>
Designação.FindbyId (Req.params.eu ia)
.então (designação => res.JSON (designação))
.Catch (err => res.status (400).json ('erro:' + err));
);
roteador.rota ('/: id').delete ((req, res) =>
Designação.FindByIDandDelete (Req.params.eu ia)
.então (() => res.JSON (Designação excluída.'))
.Catch (err => res.status (400).json ('erro:' + err));
);
roteador.rota ('/update/: id').post ((req, res) =>
Designação.FindbyId (Req.params.eu ia)
.então (designação =>
designação.Employeename = req.corpo.nome do empregado;
designação.designação = req.corpo.designação;
designação.data = data.Parse (Req.corpo.data);
designação.salvar()
.então (() => res.JSON ('designação atualizada!'))
.Catch (err => res.status (400).json ('erro:' + err));
)
.Catch (err => res.status (400).json ('erro:' + err));
);

Agora, vamos contar ao nó.Servidor JS para usar as rotas que criamos na pasta "rotas". Para fazer isso, abriremos o “servidor.JavaScript Arquivo JS ”do nosso servidor:

É assim que nosso “servidor.JS”O arquivo parece neste momento:

O código que você vai adicionar deve ser colocado antes do “aplicativo.Ouça (Port, function () " linha:

Agora, adicione o seguinte código na seção destacada:

const designaçõesRouter = requer ('./rotas/designações ');
Const FuncionárioRouter = requer ('./rotas/funcionários ');
aplicativo.uso ('/designações', designaçõesRouter);
aplicativo.uso ('/funcionários', funcionários reagentes);

As duas primeiras linhas no código acima do rumo carregarão o roteador do “Designações" e "funcionários”Arquivos que criamos no“pasta de rotas,”E então os roteadores são definidos como middleware:

Imprensa "Ctrl+s”Para salvar as mudanças adicionais em seu nó.Arquivo do lado do servidor JS:

Depois de criar as rotas no lado do servidor no nó.JS, você pode testá -los usando qualquer aplicativo de teste de API, como Postman e Insônia.

Conclusão

O processo em que as solicitações do cliente são processadas pelo lado do servidor do nó.JS é definido como roteamento. No roteamento, uma rota é uma seção de “expressar”Código que vincula as solicitações HTTP, como POST, GET, DELETE E CONSTRUIR, EM UM PADRÃO OU CATO DE URL e, em seguida, adiciona uma função para lidar com o padrão. Este artigo demonstrou como criar as rotas no lado do servidor no nó.JS. Além disso, o procedimento para criar pontos de extremidade da API com base nas operações do CRUD também é fornecido.