Arquisoft / dede_es5a

ArquiSocks: la mayor variedad de calcetines. Disponible tanto en Heroku como en Azure: https://dede-es5a.herokuapp.com/ http://20.228.137.74:3000/
2 stars 0 forks source link

Persistencia del carrito #100

Closed SofiaYYQ closed 2 years ago

SofiaYYQ commented 2 years ago

¿Qué hacemos con el carrito de los usuarios no logeados? Se podrá añadirlo a la sesión de express? O dejamos que se pierda cuando se refresca la página? O alguna otra idea?

Es posible guardarlo en el lado del cliente, pero se necesita encriptar los datos para que no pudiera cambiarlos. Por ejemplo, cambiar los precios del producto.

Actualizar los diagramas de "add product to card" y "delete product from cart" si se decide.

AlonsoA-hub commented 2 years ago

La sesión de express podría guardar el objeto Carrito aunque los usuarios no estén logeados, así que podríamos hacerlo así

SofiaYYQ commented 2 years ago

Genial entonces!

SofiaYYQ commented 2 years ago

Igual lo que puedo hacer es detectar el refresh de la página, y antes llamo el endpoint con el carrito (formato de json) y recupero el carrito mediante otra llamada después de que está refrescada la página.

Investigando por allí, lo que se suele hacer y me parece bastante lógico es que, mete tanto el objeto en sesión del navegador y en la base de datos. Solo que a la hora de hacer el check out, se calcula el precio total del carrito almacenado en la bd.

uo276406 commented 2 years ago

@SofiaYYQ pero habría que tener para cada cliente un carrito en la base de datos? 🤔

SofiaYYQ commented 2 years ago

@SofiaYYQ pero habría que tener para cada cliente un carrito en la base de datos? 🤔

Eh, no, para la primera parte que dije, solo se usaría la sesión de express, que se crea una por cada cliente que viene a la página y se expira pasado un tiempo. La verdad no vi a nadie hacerlo...😢