Chamei algumas querys e funcionaram normalmente, mas quando vou chamar a query de pickupPoints ocorre Render Server - Error.
query:
query pickupPoints($page: int!, $perPage: int!) {
getPickupPoints(page: $page, perPage: $perPage) {
items{
name,
description,
address {
city,
country,
complement,
state,
street
},
isActive
}
}
}
código react:
import React from "react";
import { useQuery } from "react-apollo";
import GET_PICKUPS from './graphql/pickup-points.graphql'
const PickUpPoints = () => {
console.log('pickuppoints')
const getPickupPoints = useQuery(GET_PICKUPS, {
variables: {
page: 1,
perPage: 10,
},
})
return (
<p>render</p>
)
}
export default PickUpPoints
Erro: Error: Network error: Only public queries are allowed during server side rendering
Alguém sabe o que pode ser?
2 Likes
Estou tendo o mesmo tipo de problema, com outras consultas
@framework66 , veja se o seu problema diz respeito a falta de instalação da referencia ao graphl de pickupponts (se for esse que você está tentando consultar), a documentação da VTEX não orienta sobre a instalação desses endpoints, apenas informa como usar o graphql infelizmente. Acabei descobrindo pela tentativa e erro.
Para instalar por exemplo, no caso do pickuppoints,
- você vai na pasta onde está seu manifest.json e roda o comando VTEX install VTEX.admin-pickup-points@2.13.0 , que nem aparece no seu graphlIDE lá na VTEX.
- depois vai nas dependencias do seu manifest.json e adiciona a linha referente ao que vc instalou,por ex: “VTEX.admin-pickup-points” : “2.x”
- em seguida, na sua pasta onde tem o react e seu package.json, você roda um VTEX setup para ele baixar os types e lincar essa api como uma referencia nas dependencias;
- apaga o node modules
- agora roda o VTEX link que ele vai fazer o download das dependencias necessárias
3 Likes
Estou tendo o mesmo problema com a vtex.catalog-graphql@1.102.3, mas ao que parece ele não autoriza você realizar consultas de APIs privadas em server side. Qual a razão para se usar GraphQL então se não podemos realizar queries de APIs que normalmente nos exigiriam Key e Token, seguindo a premissa de que GraphQL não expõe dados sensíveis como esses no Front-End, não podermos consultar uma simples lista de marcas, só porque a Catalog API é trancada?
também estou tendo o mesmo problema e ainda não encontrei solução