【发布时间】:2018-01-12 23:29:57
【问题描述】:
我正在尝试使用 GraphQL 对 GitHub 进行 API 调用,我已经能够使用静态 graphQL 调用成功调用数据,但是我无法在调用中放置变量(var 条目)以便我可以更改调用基于用户将在网络应用中提供的输入。
我正在使用 AJAX 来传递授权令牌。此外,除非查询是 JSON 字符串化,否则调用不起作用(否则会出现 400 错误)。
JSON Stringify 似乎是将变量 'superQuery' 的名称转换为字符串,而不是将 'superQuery' 的值转换为字符串。
如何发送带有可根据用户输入更改的变量的 graphQL 查询?
附: Web 开发的相对菜鸟,对于任何非常明显的错误,我们深表歉意。
这是我目前所拥有的:
var entry = $('#entry').val()
var superQuery = `{
repository(name: entry, owner: "******") {
pullRequests(last: 100) {
nodes {
state
headRepository {
owner {
login
}
}
}
}
}
}`
.ajax({
method: "POST",
url: "https://api.github.com/graphql",
contentType: "application/json",
headers: {
Authorization: "bearer **********************************"
},
data: JSON.stringify({
query: superQuery
})
})
【问题讨论】:
标签: jquery json graphql github-api