Code Monkey home page Code Monkey logo

Comments (9)

filipedeschamps avatar filipedeschamps commented on July 21, 2024 6

Uhhh nice catch!

Outra alternativa é fazer pelo Nextjs usando um middleware: https://github.com/Timer/next.js/blob/master/packages/next/README.md#api-middlewares

image

Mas de fato, teria que fazer manualmente em todas as rotas e isso uma hora vai escapar. Se pelo Now dá para fazer um wildcard para todas as rotas seria sensacional!!!

from brasilapi.

lucianopf avatar lucianopf commented on July 21, 2024 2

Li bastante das docs do Next e realmente parece que a forma que vc fez é a certa @lucas-eduardo !!

Lendo um pouco a lib do micro-cors da pra entender bem que ele na verdade é só uma high order function que injeta os headers no nosso futuro response 😬

Lí tbm sobre o custom server, mas acredito que não é necessário adicionar tanta complexidade só pra ter um comportamento global que podemos sempre ter importando o arquivo que vc gerou de config 😬

from brasilapi.

lucianopf avatar lucianopf commented on July 21, 2024 2

Então, da pra fazer integration tbm, o que a lib faz é simplesmente injetar uns headers no primeiro parâmetro da função, a gnt consegue mockar essas chamadas passando uns objetos direto pra função como req e res 🤔

(Mas de qualquer forma nao descarto e2e tbm não hahaha)

from brasilapi.

filipedeschamps avatar filipedeschamps commented on July 21, 2024 1

Show!!! Eu comentei algo importante lá no seu PR 👍

from brasilapi.

lucas-eduardo avatar lucas-eduardo commented on July 21, 2024 1

@filipedeschamps @OtavioCapila

Estou em contato com o pessoal do next js e perguntei sobre o custom server ou alguma forma de colocar de modo global os middlewares...obtive a seguinte resposta:

Hi there

We don't have global middlewares because those are bad, we don't like the side effects of that, and they also don't work for serverless functions, every function is independant, same for static pages

And having a custom server is worse so try to avoid that

let's say you're using API routes for your API

if you want to add CORS to them

go to every API route and add it

there's nothing more to it

Ainda estou em contato com eles, pois fiz a implementação como esta na documentação deles do micro-cors e o mesmo não funcionou quando é gerado o build, só funcionando com o npm run dev...obtendo novidades, trago aqui galera.

from brasilapi.

lucas-eduardo avatar lucas-eduardo commented on July 21, 2024

@lucianopf @filipedeschamps

Fiz uma implementação e já realizei o teste sobre essa issue...o PR aberto foi: https://github.com/filipedeschamps/BrasilAPI/pull/17

Fiz um custum server para essa configuração conforme a documentação do next fala. Quero estar contribuindo nesse projeto... aguardo por um feedback

from brasilapi.

filipedeschamps avatar filipedeschamps commented on July 21, 2024

Showww @OtavioCapila !! Eu não sei qual os padrões dos projetos nesse caso, sou super novo no framework, mas me parece mais previsível para evolução do framework fazer manualmente em cada endpoint ou nas configs 👍 Mas muito legal a sua sugestão e dentro de um ecossistema Node.js normal isso faz sentido 🤝 Vou lhe adicionar como contribuidor, pois querendo ou não, isso é colocar a mão na massa!

from brasilapi.

filipedeschamps avatar filipedeschamps commented on July 21, 2024

E pra testar isso turma? Como vamos fazer? 😂 Acho que não vamos ter como escapar de fazer um E2E nervoso usando a URL de preview deles.

from brasilapi.

filipedeschamps avatar filipedeschamps commented on July 21, 2024

Tudo isso já foi feito, inclusive consegue ser testado e garantido pelos testes E2E desse repositório aqui: https://github.com/filipedeschamps/BrasilAPI/pull/29

from brasilapi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.