Javascript 解析时出现GraphQL错误"ç&引用;:无法分析意外字符"\u00E7“;

Javascript 解析时出现GraphQL错误"ç&引用;:无法分析意外字符"\u00E7“;,javascript,node.js,graphql,apollo-server,keystonejs,Javascript,Node.js,Graphql,Apollo Server,Keystonejs,我将KeystoneJS与GraphQL一起使用。在我的设置中,我正在准备一个下拉菜单字段(在KeystoneJS中选择) 但是当我启动KeystoneJS应用程序时 GraphQLError: Syntax Error: Cannot parse the unexpected character "\u00E7". at syntaxError (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/err

我将KeystoneJS与GraphQL一起使用。在我的设置中,我正在准备一个下拉菜单字段(
在KeystoneJS中选择

但是当我启动KeystoneJS应用程序时

GraphQLError: Syntax Error: Cannot parse the unexpected character "\u00E7".
    at syntaxError (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/error/syntaxError.js:15:10)
at readToken (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/lexer.js:270:38)
at Object.lookahead (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/lexer.js:54:43)
at Object.advanceLexer [as advance] (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/lexer.js:44:33)
at Parser.expectToken (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:1399:19)
at Parser.parseName (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:94:22)
at Parser.parseEnumValueDefinition (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:1014:21)
at Parser.optionalMany (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:1497:28)
at Parser.parseEnumValuesDefinition (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:1002:17)
at Parser.parseEnumTypeDefinition (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:986:23)
at Parser.parseTypeSystemDefinition (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:705:23)
at Parser.parseDefinition (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:146:23)
at Parser.many (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:1518:26)
at Parser.parseDocument (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:111:25)
at parse (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql/language/parser.js:36:17)
at parseDocument (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql-tag/lib/graphql-tag.umd.js:135:16)
at gql (/Users/user0/Documents/sandbox/keystone-blank/node_modules/graphql-tag/lib/graphql-tag.umd.js:176:10)
at /Users/user0/Documents/sandbox/keystone-blank/node_modules/@keystonejs/keystone/lib/Keystone/index.js:508:23
at Array.map (<anonymous>)
    at Keystone.getTypeDefs (/Users/user0/Documents/sandbox/keystone-blank/node_modules/@keystonejs/keystone/lib/Keystone/index.js:508:8)
    at Keystone.getAdminSchema (/Users/user0/Documents/sandbox/keystone-blank/node_modules/@keystonejs/keystone/lib/Keystone/index.js:520:27)
    at createApolloServer (/Users/user0/Documents/sandbox/keystone-blank/node_modules/@keystonejs/app-graphql/lib/apolloServer.js:147:17) {
        message: 'Syntax Error: Cannot parse the unexpected character "\\u00E7".',
        locations: [ { line: 4, column: 13 } ]
    }
GraphQLError:语法错误:无法分析意外字符“\u00E7”。
在syntaxError(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/error/syntaxError.js:15:10)
在readToken(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/lexer.js:270:38)
在Object.lookahead(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/lexer.js:54:43)
在Object.advanceLexer[as advance](/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/lexer.js:44:33)
位于Parser.expectToken(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:1399:19)
位于Parser.parseName(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:94:22)
位于Parser.parseEnumValueDefinition(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:1014:21)
在Parser.optionalMany(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:1497:28)
在Parser.parseEnumValuesDefinition(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:1002:17)
位于Parser.parseEnumTypeDefinition(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:986:23)
位于Parser.parseTypeSystemDefinition(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:705:23)
位于Parser.parseDefinition(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:146:23)
在Parser.many(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:1518:26)
位于Parser.parseDocument(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/Parser.js:111:25)
在解析时(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql/language/parser.js:36:17)
在parseDocument(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql-tag/lib/graphql-tag.umd.js:135:16)
在gql(/Users/user0/Documents/sandbox/keystone blank/node_modules/graphql tag/lib/graphql tag.umd.js:176:10)
在/Users/user0/Documents/sandbox/keystone blank/node_modules/@keystonejs/keystone/lib/keystone/index.js:508:23
在Array.map()处
在Keystone.getTypeDefs(/Users/user0/Documents/sandbox/Keystone blank/node_modules/@keystonejs/Keystone/lib/Keystone/index.js:508:8)
在Keystone.getAdminSchema(/Users/user0/Documents/sandbox/Keystone blank/node_modules/@keystonejs/Keystone/lib/Keystone/index.js:520:27)
在CreateAppolloServer上(/Users/user0/Documents/sandbox/keystone blank/node_modules/@keystonejs/app graphql/lib/apolloServer.js:147:17){
消息:“语法错误:无法分析意外字符”\\u00E7“,
位置:[{行:4,列:13}]
}
当我把“法兰西”改为“法兰西”时,效果很好。GraphQL(或Keystone)似乎不喜欢非标准字符。有人确切地知道这里发生了什么,以及我如何修复它,以便我可以使用正确的形式“Français”吗?谢谢

根据,字符串中的字符限制为以下字符:

/[\u0009\u000A\u000D\u0020-\uFFFF]/
这包括字符“ç”。但是,模式中的事物名称(类型、字段、参数等)受到很大限制,必须遵循以下模式:

/[_A-Za-z][_0-9A-Za-z]*/
如果KeystoneJS将上述
选项
转换为一组枚举值,这将导致您看到的语法错误,因为枚举值必须是有效名称


通常情况下,这里的解决方法是只将枚举值映射到其正确的等效客户端。

Quick Google显示GraphQL不支持完全Unicode。检查此问题:尝试更新到最新版本。这是因为我没有想到在搜索中使用“unicode”——我是在错误消息下搜索的,等等。前端是Keystone管理面板,不幸的是,那里的定制是有限的。
/[_A-Za-z][_0-9A-Za-z]*/