Javascript 使用GraphQL创建一行
我正在尝试创建一个变异,以便在Javascript 使用GraphQL创建一行,javascript,node.js,graphql,graphiql,Javascript,Node.js,Graphql,Graphiql,我正在尝试创建一个变异,以便在项目查询中插入一个条目,但变异的响应为空。当我在变异后运行项目查询时,我看到的数据与之前相同,但不是更新后的数据。我怎么修理它 项目查询(请求): { project(id:"1") { issues { id, title, description } } } { "data": { "project": { "
项目
查询中插入一个条目,但变异的响应为空。当我在变异后运行项目
查询时,我看到的数据与之前相同,但不是更新后的数据。我怎么修理它
项目查询(请求):
{
project(id:"1") {
issues {
id,
title,
description
}
}
}
{
"data": {
"project": {
"issues": [
{
"id": "1",
"title": "Issue One",
"description": ""
},
{
"id": "2",
"title": "Issue Two",
"description": ""
},
{
"id": "4",
"title": "Issue Four",
"description": "This is issue 4"
}
]
}
}
}
mutation {
createIssue(input: {
projectId: "1",
title: "My Issue",
description: "Missing Issue",
clientMutationId: "1234"
}) {
clientMutationId,
issue {
description,
id,
title
}
}
}
{
"data": {
"createIssue": null
}
}
项目查询(响应):
{
project(id:"1") {
issues {
id,
title,
description
}
}
}
{
"data": {
"project": {
"issues": [
{
"id": "1",
"title": "Issue One",
"description": ""
},
{
"id": "2",
"title": "Issue Two",
"description": ""
},
{
"id": "4",
"title": "Issue Four",
"description": "This is issue 4"
}
]
}
}
}
mutation {
createIssue(input: {
projectId: "1",
title: "My Issue",
description: "Missing Issue",
clientMutationId: "1234"
}) {
clientMutationId,
issue {
description,
id,
title
}
}
}
{
"data": {
"createIssue": null
}
}
向项目添加条目的步骤:
{
project(id:"1") {
issues {
id,
title,
description
}
}
}
{
"data": {
"project": {
"issues": [
{
"id": "1",
"title": "Issue One",
"description": ""
},
{
"id": "2",
"title": "Issue Two",
"description": ""
},
{
"id": "4",
"title": "Issue Four",
"description": "This is issue 4"
}
]
}
}
}
mutation {
createIssue(input: {
projectId: "1",
title: "My Issue",
description: "Missing Issue",
clientMutationId: "1234"
}) {
clientMutationId,
issue {
description,
id,
title
}
}
}
{
"data": {
"createIssue": null
}
}
响应:
{
project(id:"1") {
issues {
id,
title,
description
}
}
}
{
"data": {
"project": {
"issues": [
{
"id": "1",
"title": "Issue One",
"description": ""
},
{
"id": "2",
"title": "Issue Two",
"description": ""
},
{
"id": "4",
"title": "Issue Four",
"description": "This is issue 4"
}
]
}
}
}
mutation {
createIssue(input: {
projectId: "1",
title: "My Issue",
description: "Missing Issue",
clientMutationId: "1234"
}) {
clientMutationId,
issue {
description,
id,
title
}
}
}
{
"data": {
"createIssue": null
}
}
这个问题不是由您提出的,用一种简单的方式来解释:在后端,
createIssue
和问题由不同的函数(解析器)处理,这意味着作为API使用者,您无法更改它们的响应。检查您的graphQLquery
和mutation
是否有效(-您可以使用此工具),如果是,问题来自后端这取决于createIssue
冲突解决程序中的内容,您可以共享吗?我没有设计冲突解决程序。GraphQL的新功能。。createIssue的类型与请求中提到的相同。我不确定如何在GraphQL中编写冲突解决程序。您应该与创建冲突解决程序的开发人员联系,因为冲突解决程序负责在执行某些任务后返回数据,仅前端无法执行任何操作。我将重新表述问题并更新它。我只在GraphQL中执行此操作,不涉及JS。。只是想找到一个方法来插入一个丢失的条目。它不是验证器,而是一个“graphql客户端”。。。客户端正在与服务器/API对话。。。node.js/apollo服务器使用解析器响应请求。。。您的(或不是您,如果您不负责后端)解析器返回响应,返回的内容完全取决于。。。解析程序。。。检查API文档/询问解析器作者它为什么不适用于此查询/修改是否有方法返回已创建的对象以及我发送给createIssue的请求