JTA*_*TAN 6 node.js express graphql-js
我的目标是能够在 GraphQL 查询中传递字符串对象。
目标:
{
accounts (filter:
'{"fieldName": "id",
"fieldValues":["123"],
"filterType":"in"}'){
id
}
}
Run Code Online (Sandbox Code Playgroud)
错误:
"Syntax Error GraphQL request (1:22) Unexpected single quote character ('), did you mean to use a double quote (\")?"
Run Code Online (Sandbox Code Playgroud)
问题是 GraphQL 似乎不接受用单引号括起来的字符串。
在对象内部使用单引号是不可能的,因为这需要对编译这些对象的客户端进行重大更改。
例子:
{
"fieldName": "id",
"fieldValues":["123"],
"filterType":"in"
}
Run Code Online (Sandbox Code Playgroud)
架构:
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),
},
Run Code Online (Sandbox Code Playgroud)
您需要在查询字符串中转义双引号:
{
accounts (
filter: "{\"fieldName\":\"id\",\"fieldValues\":[\"123\"],\"filterType\":\"in\"}"
){ id }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3477 次 |
| 最近记录: |