GraphQL을 통해 mysql 데이터를 수신할 수 없습니다.
P粉092778585
2023-08-29 18:02:24
<p>Node.js Express 서버에서 GraphQL과 mysql을 사용하려고 합니다. </p>
<p>하지만 검색어를 실행할 때마다 다음 오류가 발생합니다. </p>
<p>오류 메시지는 다음과 같습니다.</p>
<pre class="brush:php;toolbar:false;">{
"오류": [
{
"message": "Iterable이 필요하지만 "RootQueryType.getAllGoals" 필드에 대한 항목을 찾지 못했습니다.",
"위치": [
{
"라인": 2,
"열": 3
}
],
"경로": [
"getAllGoals"
]
}
],
"데이터": {
"getAllGoals": null
}
}</pre>
<p>내 GraphQL 쿼리는 다음과 같습니다. </p>
<pre class="brush:php;toolbar:false;">쿼리 {
getAllGoals {
제목
진전
목표
}
}</pre>
<p>"SELECT * FROM (my table)"에서 예상한 결과를 얻었지만 이를 GraphQL 해석기로 반환하려고 하면 다음과 같은 오류가 발생합니다. < ;/p>
<pre class="brush:php;toolbar:false;">const RootQuery = new GraphQLObjectType({
이름: "RootQueryType",
필드: {
getAllGoals: {
유형: 새로운 GraphQLList(GoalType),
해결(부모, 인수) {
return db.query("SELECT * FROM myTable", (err, result) => {
만약 (err) throw err
console.log(JSON.parse(JSON.stringify(결과)))
JSON.parse(JSON.stringify(결과))를 반환합니다.
})
}
}
}
})</pre>
<p>내 GraphQLObjectType GoalType에 충돌이 있는지 확인했지만 아무 것도 발견되지 않았습니다. </p>
이미 수정했으므로 쿼리가 포함된 Promise를 생성하면 됩니다(아래와 같습니다):
으아악