A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Consideraciones para producci贸n

22/25
Recursos

Aportes 8

Preguntas 2

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Seg煤n lo que he le铆do en la documentaci贸n para habilitar CORS en todos los requests la soluci贸n ser铆a a帽adir:

const cors = require('cors');
app.use(cors());

Si solo queremos hacer CORS a los endpoints de nuestra API, bajamos app.use(cors()) justo antes de que empiecen nuestras rutas hacia la API. (Esa ser铆a mi soluci贸n)

Un breve resumen de las consideraciones para producci贸n:

  • Cors: Que acceso y a quienes le damos acceso para hacer solicitudes
  • Https: Que la API esta sobre servidor de HTTPS
  • Procesos de Build: Se ve en procesos que cosas que tiene procesar informaci贸n (typescript)
  • Remover logs: No es bueno tener logs, a veces esto tiene demoras, existen mejor formas para capturar logs.
  • Seguridad (helmet): Muy importante la seguridad y para esto se recomienda helmt que es una colecci贸n de Middleware que colocan capas de segridad a la aplicaci贸n
  • Testing: Correr prebas unitarias o de integraci贸n antes de salir de producci贸n

Esta clase es oro, aqui se arreglara la famosa frase de:
cliente: "Tu programa no funciona"
Dev: 鈥淓n mi computadora funciona sin problema鈥

Existen distintas soluciones.

Podemos agregar el cors como middleware a la ruta:

const cors = require('cors');

app.get('/products/:id', cors(), function (req, res, next) {
  res.json({msg: 'This is CORS-enabled for a Single Route'})
})

O tambi茅n podemos agregarlo como un middleware general.

const cors = require('cors');
app.use(cors());

Recuerda que tambi茅n podemos configurar algunas opciones:

const cors = require('cors');

var corsOptions = {
  origin: 'https://example.com',
  optionsSuccessStatus: 200 // some legacy browsers (IE11, various SmartTVs) choke on 204
}

app.use(cors(corsOptions ));

Buscando por ah铆, como dice Luis Berenguer la alternativa m谩s sencilla parece ser instalar la libreria cors de npm.
Y agregar el siguiente c贸digo:

const cors = require('cors');

app.use(cors());

Esto lo agregas en el index.js principal y listo.
cors - NPM

Ya quedo el frontend

Una soluci贸n ser铆a instalar y usar el middleware CORS de forma global.

  1. Instalaci贸n npm i cors

  2. Se requiere en index.js const cors = require('cors');

  3. Se pone en funci贸n dentro del mismo archivo app.use(cors());

Lo ideal en mi caso es agregar el dominio desde el cual estoy haciendo la peticion en el achivo .htacces donde esta ubicada mi API.