Apollo-link-rest: ReferenceError: Cabeçalhos não definidos

Criado em 3 jan. 2018  ·  10Comentários  ·  Fonte: apollographql/apollo-link-rest

Testei o código básico no nó 8 usando o readme e seu bombardeio.

/home/stephen/dev/gql-play/node_modules/apollo-link-rest/lib/bundle.umd.js:110
    if (headers instanceof Headers) {
                           ^

ReferenceError: Headers is not defined
    at normalizeHeaders (/home/stephen/dev/gql-play/node_modules/apollo-link-rest/lib/bundle.umd.js:110:28)
    at new RestLink (/home/stephen/dev/gql-play/node_modules/apollo-link-rest/lib/bundle.umd.js:259:25)
    at Object.<anonymous> (/home/stephen/dev/gql-play/index.js:7:14)
    at Module._compile (module.js:635:30)
    at Object.Module._extensions..js (module.js:646:10)
    at Module.load (module.js:554:32)
    at tryModuleLoad (module.js:497:12)
    at Function.Module._load (module.js:489:3)
    at Function.Module.runMain (module.js:676:10)
    at startup (bootstrap_node.js:187:16)

Código-fonte anexado abaixo
gql-play.zip

➜  gql-play node -v
v8.9.3

Comentários muito úteis

Consegui contornar isso colocando os cabeçalhos no objeto global.

const fetch = require('node-fetch');
global.Headers = fetch.Headers;

Todos 10 comentários

Consegui contornar isso colocando os cabeçalhos no objeto global.

const fetch = require('node-fetch');
global.Headers = fetch.Headers;

Tentei reproduzi-lo aqui: https://codesandbox.io/s/0x4wx2or0v sem sorte. Você pode tentar?

Usando seu exemplo, estou com o mesmo problema, tentei também com o nó 6.1, mesmo resultado.

Eu acho que estou executando com node9? Vou precisar fazer o downgrade do meu nó e ver se isso se reproduz. Estou tendo outros problemas de nó.

eles adicionaram cabeçalhos ao global no nó 9? https://runkit.com/trashhalo/5a4d5779ceaa39001278edbe 9.3.0 parece ainda apresentar erros

@trashhalo Estou usando a v9.3.0 - você ainda está apresentando esse problema?

Ei @trashhalo - Acabei de executar seu aplicativo de teste e você está certo, ao tentar executar link-rest diretamente como um nó-script, recebo o mesmo problema de cabeçalhos ausentes.

Consegui superar esse problema fazendo:

global.Headers = global.Headers || require("fetch-headers");

No entanto, obviamente, isso resolve o problema. - Infelizmente, quando faço isso, recebo um erro com ReferenceError: gql is not defined

Não estou totalmente certo de que esperamos que o link-rest funcione quando chamado em um ambiente de nó puro. Pensamentos?

Oh, tudo bem. Não me importo de preencher o problema, presumindo que funcione.

Olá a todos,

nó v8.94
OS X 10.11.6
Next.JS v 5.0.1-canary.4

Instalei o Exemplo Avançado , atualizei todas as dependências para as mais recentes e tudo correu bem.

Em seguida, copiei src/SearchShow.js e suporte <ApolloProvider> (e deps) para um novo projeto, executando em Next.JS e o problema apareceu.

Eu apliquei o polyfill de @fbartho e o problema não apareceu mais. Além disso, não vejo o erro ReferenceError: gql is not defined , conforme relatado por @fbartho.

Na esperança de que seja útil, esse projeto está disponível aqui .

Eu tenho o mesmo problema com o nó v9.7.1.

Estou adicionando à documentação que você pode precisar polyfill Headers para o seu ambiente de tempo de execução de destino; além disso, outras melhorias estão sendo discutidas no # 93, então fecharei este tíquete.

Esta página foi útil?
0 / 5 - 0 avaliações