Como posso buscar dados do remoteConfig em um componente SSR NextJs?
No meu site, eu uso NextJs, e quero que ele seja estático, mas também use rotas dinâmicas. Para isso, a rota dinâmica é encapsulada em um componente SSR que cria as rotas na construção com generateStaticParams
. Dentro desse componente, também preciso obter os dados do remoteConfig, e preciso que ele gere essas rotas, mas não consigo encontrar uma solução para isso.
Então, no meu aplicativo, eu busco dados do remoteConfig e do CSR assim
const [dara, setData] = useState([]);
const configKey = 'data';
useEffect(() => {
const remoteConfig = getRemoteConfig(firebaseApp);
fetchAndActivate(remoteConfig)
.then(() => {
const value = getValue(remoteConfig, configKey);
const valueString = value.asString();
const data = JSON.parse(valueString);
setDara(data);
})
.catch((err) => {
console.log(err);
});
}, [data]);
Tentei mover esse código para uma função utils, mas não funciona
export async function getDataFromRemoteConfig(configKey: string) {
try {
const remoteConfig = getRemoteConfig(firebaseApp);
await fetchAndActivate(remoteConfig);
const value = getValue(remoteConfig, configKey);
const valueString = value.asString();
return JSON.parse(valueString);
} catch (error) {
console.error('Error fetching projects from Remote Config:', error);
return [];
}
}
const data = await getDataFromRemoteConfig('data')
Parece que você está tentando usar o SDK do lado do cliente para o Firebase Remote Config no código do lado do servidor, o que não funciona. Como o Remote Config adapta os valores dos parâmetros ao usuário específico, ele precisa de informações que só estão disponíveis no lado do cliente. Atualmente, não há nenhuma API para recuperar todos os valores no código do lado do servidor.
Há uma API do lado do servidor para ler os modelos que o Remote Config usa, mas nem todos os valores serão preenchidos aqui.