Necesito agregar etiquetas <script> que se apliquen a cada página en mi sitio web NextJS. Pero primero, necesito crear una solicitud POST a una API para obtener los datos que se usarán para el atributo src de estas etiquetas <script> .
Necesito crear la solicitud POST en el lado del servidor porque la solicitud requiere claves secretas, por lo que la creación de la solicitud POST en _app.tsx se elimina de mis opciones.
Eso me deja con _document.tsx , que no estoy seguro de cómo debería implementarse. Esto es lo que tengo hasta ahora:
const getSessionTags = async () => {...}; export default class _Document extends Document { static async getInitialProps(ctx: DocumentContext) { const initialProps = await Document.getInitialProps(ctx); this.sessionTags = await getSessionTags(); return { ...initialProps, ...getMantineInitialProps }; } render() { return ( <Html> <Head></Head> <body> <Main /> <NextScript /> <script async src={`https://website.org/${this.sessionTags.id}`} /> </body> </Html> ); } } Mi código actual es casi similar al Uso de _document.js de este artículo , pero no mostraba la implementación si necesitaba realizar solicitudes HTTP, solo cómo incrustar las etiquetas <script> en _document.tsx