Estoy trabajando en un sitio web que usa Next.js (SSR) y Storyblok (Headless CMS) y uso la API de entrega de contenido de Storyblok para obtener el contenido de Storyblok. Originalmente, estaba usando el método SSG para revisar los enlaces disponibles y luego generar las páginas desde allí, que es como la mayoría de los tutoriales de Next/StoryBlok le muestran cómo, sin embargo, necesitaba utilizar el método SSR.
Tengo una página que tiene un slug predeterminado de pages/industries y luego, dentro del método getServerSideProps , estoy buscando el slug del parámetro de contexto pasado. Si la página no se usa en el modo de vista previa, usará los datos de query.slug para crear las rutas que se usarán en el paquete del cliente StoryBlok JS ( await Storyblok.get(url, sbParams); )
Sin embargo, cuando real_path se ha configurado con otro valor ( /industry ), query.slug o resolved_path se actualiza al valor de la ruta real. Que al consultar la API, es 404, porque la ruta real todavía está en pages/industries y este valor original no está en el context del getServerSideProps .
Una solución que pensé sería consultar todos los enlaces disponibles usando cdn/links y comparar el slug con el real_path y luego obtener el ID de la historia basado en esa comparación, pero esto no parece correcto (actualmente estoy tratando de hacer que esto funcione y se escale en el momento).
Esto no es un problema en el modo de vista previa ya que la solicitud me pasa la ID de la historia, por lo que es fácil consultar la API.
Esta es la respuesta al ver la página, no en el modo de vista previa y puede ver los valores.
query: { slug: [ 'industry' ] }, resolvedUrl: '/industry', params: { slug: [ 'industry' ] }, locales: undefined, locale: undefined, defaultLocale: undefined }¿Cómo puedo seguir obteniendo el enlace API original para consultar?