Mon but est de pouvoir passer un objet à cordes dans une requête GraphQL.GraphQL-js Node/Express: Comment passer un objet à cordes dans une requête GraphQL?
Objectif:
{
accounts (filter:
'{"fieldName": "id",
"fieldValues":["123"],
"filterType":"in"}'){
id
}
}
Erreur:
"Syntax Error GraphQL request (1:22) Unexpected single quote character ('), did you mean to use a double quote (\")?"
Le problème est GraphQL ne semble pas accepter des chaînes entourées de guillemets simples. L'utilisation de guillemets simples à l'intérieur de l'objet ne sera pas possible car cela nécessiterait des changements majeurs au client qui compile ces objets.
Exemple:
{
"fieldName": "id",
"fieldValues":["123"],
"filterType":"in"
}
Schéma:
accounts: {
type: new GraphQLList(accountType),
args: {
id: { type: GraphQLString },
status: { type: GraphQLString },
filter: { type: GraphQLString },
sort: { type: GraphQLString },
},
resolve: (root, args, { loaders }) => loaders.account.load(args),
},
Merci pour l'entrée. Malheureusement, cela ne fonctionnera pas car cela nécessiterait des modifications de code du côté client. – JTAN