Модуль Nuxt Apollo / Функции Netlify / FaunaDB / GraphQL - JSON.parse: неожиданный символ в строке 1
По прошествии нескольких часов я не могу точно определить причину этой ошибки при выполнении запроса. Впервые в GraphQL и Apollo.
Конфигурация модуля @nuxt/apollo:
apollo: {
includeNodeModules: true,
clientConfigs: {
default: {
httpEndpoint: '~/.netlify/functions/fauna-graphql'
}
}
}
Netlify функция, взятая непосредственно из члена команды Netlify в примере репо:
const { ApolloServer } = require('apollo-server-lambda')
const { createHttpLink } = require('apollo-link-http')
const fetch = require('node-fetch')
const { introspectSchema, makeRemoteExecutableSchema } = require('graphql-tools')
exports.handler = async function(event, context) {
if (!process.env.FAUNADB_SERVER_SECRET) {
const msg = `
FAUNADB_SERVER_SECRET missing.
Did you forget to install the fauna addon or forgot to run inside Netlify Dev?
`
console.error(msg)
return {
statusCode: 500,
body: JSON.stringify({ msg })
}
}
const b64encodedSecret = Buffer.from(
process.env.FAUNADB_SERVER_SECRET + ':' // weird but they
).toString('base64')
const headers = { Authorization: `Basic ${b64encodedSecret}` }
const link = createHttpLink({
uri: 'https://graphql.fauna.com/graphql', // modify as you see fit
fetch,
headers
})
const schema = await introspectSchema(link);
const executableSchema = makeRemoteExecutableSchema({
schema,
link
})
const server = new ApolloServer({
schema: executableSchema
})
return new Promise((yay, nay) => {
const cb = (err, args) => (err ? nay(err) : yay(args))
server.createHandler()(event, context, cb)
})
}
Внутри компонента: (Схема faunadb настроена точно из их учебного примера)
export default {
data() {
return {
test: {},
}
},
apollo: {
test: gql`
query {
allWarehouses {
data {
_id
name
address {
street
city
state
zipCode
}
}
}
}
`
}
}
Ошибка возникает из-за модуля apollo:
var vueApolloOptions = Object.assign(providerOptions, {
errorHandler: function errorHandler(error) {
console.log('%cError', 'background: red; color: white; padding: 2px 4px; border-radius: 3px; font-weight: bold;', error.message);
}
});
Читая аналогичные вопросы относительно той же ошибки (но не того же стека), это могло быть связано с попыткой синтаксического анализа HTML как JSON. Я также видел, что это можно решить с помощьюJSON.stringify
, но я не знаю, куда мне его применить.
Какие-либо предложения?