- 1

Optimización Web con Next.js: Velocidad y Rendimiento Mejorados
01:38 - 2

Creación de Proyectos Next.js con TypeScript y App Router
10:22 - 3

Creación de Tienda Online con NextGIS y Shopify
06:42 - 4

Rutas Estáticas y Dinámicas en Next.js: Creación y Uso Práctico
08:26 - 5

Implementación de Layouts en Next.js: Globales y Locales
06:58 - 6

Navegación Optimizada con Next.js Usando el Componente Link
04:46 - 7

Rutas Dinámicas y Parámetros en Next.js: Implementación Práctica
08:24 - 8

Uso de React Server Components en Next.js: Cliente vs Servidor
09:23 - 9

Arquitectura de Componentes para Landing Page en Next.js
09:13 Prueba tus conocimientos de los conceptos de Next.js
Implementación de Cookies de Acceso en Shopify con Next.js
Clase 42 de 57 • Curso de Next.js 14
Contenido del curso
- 10

Implementación de CSS Modules en Next.js para Estilizar Componentes
06:46 - 11

Instalación y Configuración de Sass en Next.js
08:39 - 12

Estilos Globales con SASS para Temas Oscuros en Aplicaciones Web
04:41 - 13

Agregar Archivos Estáticos en Next.js: Imágenes y Recursos Internos
04:10 - 14

Optimización de Imágenes con Next.js: Uso de Next.Image
05:48 - 15

Optimización y Responsividad con NextImage en Next.js
09:33 - 16

Optimización de Fuentes de Google en Next.js con Roboto
04:39 - 17

Estilos Dinámicos en React con Classnames y useState
08:39 Confirma que ya sabes manejar estilos y estáticos en Next.js
- 18

Creación de Tienda en Shopify para Desarrollo con Next.js
04:18 - 19

Creación y uso de variables de entorno en Next.js
07:53 - 20

Consumo de APIs con Shopify y React Server Components
09:22 - 21

Implementación de Loader en Next.js para Carga de Productos
09:07 - 22

Implementación de Root Grouping en Next.js
06:34 - 23

Manejo de Errores en Next.js con React Error Boundary
08:19 Pon a prueba lo que aprendiste de data fetching en Next.js
- 24

Manejo de Errores y Páginas 404 en Next.js
09:17 - 25

React Server Components en Next.js: Renderizado y Optimización
10:12 - 26

Diferencias entre archivos Template y Layout en Next.js
05:57 - 27

Arquitectura Escalable para Aplicaciones de Software
08:23 - 28

Creación de APIs con Next.js y Road Handlers
07:54 - 29

Configuración y Creación de Colecciones en Shopify
05:53 - 30

Patrones de Fetching en Next.js: Secuencial y Paralelo
11:36 - 31

Filtrado Dinámico de Productos en Shopify mediante API Collections
10:36 - 32

Uso de searchParams y params en componentes React cliente-servidor
07:38 - 33

Implementación de la Vista de Producto en TypeScript y React
11:43 - 34

Gestión de Caché en Next.js: Tipos y Recomendaciones Prácticas
10:31 - 35

Revalidación de Caché en Next.js: Endpoints por Tag y Path
11:20 - 36

Redirección en Next.js: Server y Client Components
06:34 - 37

Creación de un Componente React para Sanitizar HTML
10:26 - 38

SEO Dinámico y Estático en Next.js para Mejorar Posicionamiento Web
08:51 ¡Revisa los temas avanzados de Next.js en este quiz!
- 39

Implementación de API GraphQL en Shopify para Autenticación Segura
03:48 - 40

Uso de Server Actions en Next.js para Formularios React
06:22 - 41

Implementación de Signup con GraphQL y Shopify
12:56 - 42

Implementación de Cookies de Acceso en Shopify con Next.js
11:20 - 43

Implementación de Flujo de Login con Tokens y Cookies
07:50 - 44

Validación de Access Tokens en Next.js con GraphQL y Cookies
07:51 - 45

Implementación de Carrito de Compras con React Icons
11:37 - 46

Manejo de estado global con Sustant en Next.js 13
09:34 - 47

Implementación de Carrito de Compras en JavaScript y CSS
07:55 - 48

Solución de errores de hidratación en carritos con Next.js y Shopify
12:13 - 49

Implementación de Middlewares en Next.js para Control de Acceso
08:39
¿Cómo se autentica un usuario con un token de acceso en Shopify?
Implementar un sistema de autenticación sólido es esencial para garantizar la seguridad y el buen funcionamiento de cualquier aplicación web. Uno de los métodos más comunes es el uso de tokens de acceso almacenados en cookies. Este método no solo es seguro, sino también muy eficaz para manejar sesiones de usuario. Aquí, te mostraré cómo hacerlo utilizando la API de Shopify.
¿Cómo crear un access token con la API de Shopify?
Empezamos creando un script dedicado para generar tokens de acceso. Para ello:
-
Organización del proyecto: Crea una nueva carpeta
utilsdentro del directoriosource. Dentro deutils, añade una subcarpeta llamadaouty un archivocreate_access_token.jsdonde residirá el script para generar el token. -
Uso de Postman: Nos dirigimos a Postman para crear el token de acceso. Necesitarás dos variables: el email y la contraseña del usuario. Al enviar esta consulta, recibirás un token de acceso que podrás implementar con cookies.
export const createAccessToken = async (email, password) => {
const client = getGraphQLClient(); // Obtenemos el cliente GraphQL
const { data } = await client.mutate({
mutation: CustomerAccessTokenMutation,
variables: { email, password },
});
if (data) {
const { accessToken, expiresAt } = data.customerAccessTokenCreate.customerAccessToken;
const cookieStore = cookies();
cookieStore.set('accessToken', accessToken, {
path: '/',
expires: new Date(expiresAt),
httpOnly: true,
sameSite: 'strict',
});
}
};
En este ejemplo, aseguramos que el token se almacene de forma segura en una cookie con opciones como httpOnly y sameSite: 'strict'.
¿Cómo se almacena el token en una cookie?
El siguiente paso es almacenar el token en una cookie una vez que lo obtienes. Next.js provee una herramienta útil y sencilla para manejar cookies en el servidor.
-
Instanciación de la cookie: Usa las capacidades de Next.js para gestionar las cookies. Crea un
cookieStorey verifica la existencia del token antes de almacenar los datos de forma segura. -
Protección de la cookie: Es esencial establecer prácticas seguras al configurar las cookies, como usar
httpOnlypara evitar el acceso del lado del cliente, ysameSite: 'strict'para limitar el uso de la cookie solo en tu sitio.
¿Cuáles son las consideraciones de seguridad y mejoras?
El sistema de autenticación que hemos visto es eficaz, pero siempre hay margen para mejorar la seguridad:
-
Encriptación de la cookie: Actualmente, el token de acceso se guarda en texto plano. Para protegerlo de posibles ataques y robo de identidad, considera encriptar la cookie para dificultar el acceso no autorizado.
-
Manejo de errores: Implementa estructuras
try-catchpara gestionar y solucionar errores de manera eficaz. Esto evita que la aplicación falle inesperadamente por fallas en la red o errores de autenticación. -
Verificación de contraseñas: Mejora el flujo de registro asegurando que las contraseñas y sus confirmaciones coincidan antes de proceder con acciones importantes.
Estos consejos no solo incrementan la seguridad de tu aplicación, sino que también mejoran su fiabilidad y la experiencia del usuario.
Con estas herramientas en mano, tendrás un robusto sistema de autenticación mediante tokens de acceso. Te invitamos a seguir experimentando e implementando estas técnicas, ¡y no olvides seguir aprendiendo y mejorando tu aplicación día a día!