Я пытаюсь отобразить контент из страпи в приложении next.js, которое генерируется статически.
Я запускаю и страпи, и next.js на локальном хосте (страпи на localhost:1337
, next.js на localhost:4200
) и отключил cors на страпи.
{
name: 'strapi::cors',
config: {
enabled: false,
origin: ['*'],
methods: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'HEAD', 'OPTIONS'],
headers: '*'
},
},
Когда я пытаюсь получить данные из getStaticProps
, я получаю сообщение об ошибке:
cause: Error: connect ECONNREFUSED ::1:1337
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1300:16) {
errno: -61,
code: 'ECONNREFUSED',
syscall: 'connect',
address: '::1',
port: 1337
}
export async function getStaticProps() {
try {
const res = await fetch('http://localhost:1337/api/pages/2');
const pages = await res.json();
return {
props: { title: pages.data.attributes.title },
};
} catch (err) {
return { props: { title: 'failed' } };
}
}
Интересно то, что если я использую тот же механизм выборки внутри хука, он работает:
useEffect(() => {
getStaticProps();
}, []);
У кого-нибудь есть идея, почему это произойдет?
🤔 А знаете ли вы, что...
Strapi поддерживает создание пользовательских хука для расширения функциональности.