GraphQLError: Syntax Error: Expected $, found [
GraphQLError: Syntax Error: Expected $, found [
我正在尝试查询这里的 graphql 服务器
http://sapienscube.pythonanywhere.com/intrusion-detection-system
在 Reactjs 中使用 Apollo 进行此查询:
const PREDICT_ATTACK_TYPE = gql`
query Query($packets: List[List[String]) {
predict(packets: $packets)
}
`;
// features is an array of arrays of strings: List[List[String]] like this: [[0, tcp, http, ..., ]]
<Query query={PREDICT_ATTACK_TYPE} variables={{ features }}>
{({ loading, error, data }) => {
if (loading) return <div>loading..</div>;
if (error) return <div>Error:</div>;
console.log(data);
return <div>{data.predict}</div>;
}}
但是我收到了错误
GraphQLError:语法错误:预期 $,找到 [
5 |
6 | import { getFeaturesArray } from "./Utils";
7 |
> 8 | const PREDICT_ATTACK_TYPE = gql`
9 | query Query($packets: List[List[String]]) {
10 | predict(packets: $packets)
11 | }
虽然 List
在技术上是 GraphQL 中的一种类型,但不能在 GraphQL 文档中通过名称引用它。指定特定类型的 List
时,只需将类型括在方括号中 ([ ]
).
query Query($packets: [[String]]) {
predict(packets: $packets)
}
此处[[String]]
表示List
中的List
中的String
中的List
。
您看到上述错误是因为解析器正在将类型 List
注册为 $packets
的类型并继续处理下一个有效字符,该字符应该是 $
指示下一个变量定义的开始。
我正在尝试查询这里的 graphql 服务器
http://sapienscube.pythonanywhere.com/intrusion-detection-system
在 Reactjs 中使用 Apollo 进行此查询:
const PREDICT_ATTACK_TYPE = gql`
query Query($packets: List[List[String]) {
predict(packets: $packets)
}
`;
// features is an array of arrays of strings: List[List[String]] like this: [[0, tcp, http, ..., ]]
<Query query={PREDICT_ATTACK_TYPE} variables={{ features }}>
{({ loading, error, data }) => {
if (loading) return <div>loading..</div>;
if (error) return <div>Error:</div>;
console.log(data);
return <div>{data.predict}</div>;
}}
但是我收到了错误
GraphQLError:语法错误:预期 $,找到 [
5 |
6 | import { getFeaturesArray } from "./Utils";
7 |
> 8 | const PREDICT_ATTACK_TYPE = gql`
9 | query Query($packets: List[List[String]]) {
10 | predict(packets: $packets)
11 | }
虽然 List
在技术上是 GraphQL 中的一种类型,但不能在 GraphQL 文档中通过名称引用它。指定特定类型的 List
时,只需将类型括在方括号中 ([ ]
).
query Query($packets: [[String]]) {
predict(packets: $packets)
}
此处[[String]]
表示List
中的List
中的String
中的List
。
您看到上述错误是因为解析器正在将类型 List
注册为 $packets
的类型并继续处理下一个有效字符,该字符应该是 $
指示下一个变量定义的开始。