¿Hay alguna forma de obtener datos de una API solo en el lado del servidor en NuxtJS, ya que incluiré mi API_TOKEN en los encabezados de la solicitud?
Código de ejemplo:
<template> <div> <h1>Data fetched using asyncData</h1> <ul> <li v-for="mountain in mountains" :key="mountain.title"> <NuxtLink :to="{ name: 'mountains-slug', params: { slug: mountain.slug } }" > {{ mountain.title }} </NuxtLink> </li> </ul> </div> </template> <script> export default { async asyncData({ $http }) { const mountains = await $http.$get('https://api.nuxtjs.dev/mountains', {headers: "X-API-KEY: MY_API_TOKEN"}) return { mountains } } } </script>No puede usar claves privadas aquí porque llegará a su servidor solo una vez, luego se usará solo en el cliente. Use un middleware para ocultar el token o use uno público.
Mi otra respuesta sobre este tema puede ser útil aquí.