🌍 Visão Geral
O arquivo route.ts
📂 gerencia requisições GET dentro da pasta my-route
. Ele utiliza o Payload CMS para recuperar informações da coleção colaboradores e retornar os dados em formato JSON.
📜 Estrutura do Código
🔹 Importações
import configPromise from '@payload-config';
import { getPayload } from 'payload';
🔍 Explicação:
configPromise
⚙️: Importa as configurações do Payload CMS.getPayload
📦: Função que retorna uma instância do Payload, permitindo interagir com os dados.
🚀 Implementação da Função GET
export const GET = async () => {
const payload = await getPayload({
config: configPromise,
});
const data = await payload.find({
collection: 'colaboradores',
});
return Response.json(data);
};
🔍 Explicação:
async () => {}
⚡: A função é assíncrona para suportar chamadasawait
.getPayload({ config: configPromise })
🔄: Obtém uma instância do Payload CMS utilizando a configuração importada.payload.find({ collection: 'colaboradores' })
📋: Busca todos os registros da coleção colaboradores.Response.json(data)
📡: Retorna os dados encontrados no formato JSON.
🔥 Funcionalidades
✅ Recuperação de Dados: O endpoint retorna informações da coleção colaboradores.
✅ Formato JSON: Resposta padronizada para integração com front-ends e outros sistemas.
✅ Uso de await
: Evita bloqueios desnecessários e melhora a performance da API.
⚠️ Considerações
🔹 Assincronicidade: O uso de async/await
melhora a eficiência, evitando bloqueios.
🔹 Segurança: É recomendável adicionar autenticação para restringir o acesso aos dados.
🔹 Manutenção: Evite modificar este arquivo sem necessidade, pois pode afetar a recuperação de dados da API.
📌 Código Completo
import configPromise from '@payload-config';
import { getPayload } from 'payload';
export const GET = async () => {
const payload = await getPayload({
config: configPromise,
});
const data = await payload.find({
collection: 'colaboradores',
});
return Response.json(data);
};