Página temporal en admin.all2cart.com para comprobar contra
api.all2cart.com la sesión por cookie y los endpoints del catálogo,
públicos y del panel.
Recargar la página es la prueba de verdad de que la sesión se mantiene: recarga el navegador entero y, si sigues dentro, es porque la cookie ha viajado sola.
Acceso del equipo (POST /api/v1/admin/login). Sólo acepta cuentas
admin: un cliente recibe el mismo error que una contraseña incorrecta.
Ojo con el límite: el acceso del panel bloquea a los 3 intentos fallidos por email + IP durante un minuto. Es a propósito.
GET /api/v1/productsLo que ve la tienda. No necesita sesión, y sólo devuelve productos publicados: un borrador o un archivado no existe aquí.
Pedir una categoría padre trae también lo que cuelga de ella: con
category=summer salen los productos de Summer Items y de
Trending Items Summer. Una categoría que no existe devuelve lista vacía, no el
catálogo entero.
GET /api/v1/admin/productsRequiere sesión de administrador. A diferencia del público, aquí sí se ven los borradores y los archivados.
GET /api/v1/products/{slug} para la pública y
GET /api/v1/admin/products/{id} para la del panel. Se abren con los botones
«ficha» de las listas de arriba, o escribiendo el slug a mano.
POST /api/v1/admin/images
Requiere sesión de administrador. Sube el fichero y devuelve la URL, que es lo que luego
va en images[].url al guardar el producto.
Lo que se comprueba es el contenido del fichero, no su extensión: si
renombras un .txt a .jpg tiene que responder 422.
Merece la pena probarlo.
GET /sanctum/csrf-cookie — deja las cookies XSRF-TOKEN y de sesión.POST /api/v1/admin/login — con la cabecera X-XSRF-TOKEN.GET /api/v1/user — sin nada más que la cookie: si responde, hay sesión.POST /api/v1/logout — y se vuelve a pedir /user para confirmar el 401.
Del catálogo, lo que conviene ver funcionando: que el listado público
no saque borradores, que la ficha de uno no publicado sea un
404, que el panel sí los vea, y que el precio venga en
price_cents — enteros, nunca euros.