I've been working on a project using Next and GraphQL and I am having a hard time figuring out what is causing the following error:
ClientError: GraphQL Error (Code: 400): {"response":{"error":"{\"errors\":[{\"message\":\"parse token failed: illegal base64 data at input byte 0\"}],\"data\":null}","status":400,"headers":{}},"request":{"query":"mutation CreateComment($name: String!, $email: String!, $comment: String!, $slug: String!) {createComment(data: {name: $name, email: $email, comment: $comment, post: { connect: { slug: $slug } } }) { id }}","variables":{"name":"Nate","email":"dasdasd@asasd","comment":"test","slug":"test-slug"}}}
And here is my query. I've tried removing any extraneous spaces and any spelling errors I caught. The token is pulling just fine and everything else seems OK aside from the error:
console.log(graphcmsToken)
const { name, email, slug, comment } = req.body;
const graphQLClient = new GraphQLClient(graphqlAPI, {
headers: {
authorization: `Bearer ${graphcmsToken}`}
})
const query = gql`mutation CreateComment($name: String!, $email: String!, $comment: String!, $slug: String!) {createComment(data: {name: $name, email: $email, comment: $comment, post: { connect: { slug: $slug } } }) { id }}`
try {
const result = await graphQLClient.request(query, req.body)
return res.status(200).send(result);
} catch (error){
console.log(error)
return res.status(500).send(error)
}
Thanks in advance! This has been stumping me for longer than I'd like to admit, and when I try to search around here for an answer I haven't had much luck with JS/Next/GraphQL in particular.
The problem was in the token -- copying and pasting it had added some extra formatting that was causing problems.