【发布时间】:2017-10-04 05:16:52
【问题描述】:
我想要实现的目标是使用 javascript 在 github 存储库中读取和写入 issues 和 labels。
到目前为止,我已经能够通过身份验证并检索存储库上的一些数据,但我找不到在单个问题上或一组问题上检索数据的方法。
这是我正在使用的代码。
var request = require("request");
var url = 'https://api.github.com/graphql';
var headers = {
Authorization:'token XXXXXXXXXXXXXXXXXXXXXXXXXXX',
Accept: 'application/json',
'User-Agent': 'request',
'Content-Type': 'application/json'
};
var options = {
method: 'post',
body: undefined,
json: true,
url: url,
headers: headers
};
function makeRequest(options){
request(options, function (error, response, body) {
if (error) {
console.error('error posting json: ', error);
throw error;
}
var responseHeaders = response.headers;
var statusCode = response.statusCode;
console.log('Status code: ', statusCode);
console.log('Body: ', body);
});
};
options.body = {
query: '{repository(owner:"TonyEdelweiss", name:"hello-world") {createdAt name projectsUrl}}'
};
makeRequest(options);
options.body = {
query: '{repository(owner:"TonyEdelweiss", name:"hello-world"){issues(first: 2){edges{cursor node{id}}}}}'
};
makeRequest(options);
在第一次 makeRequest() 中,我得到以下信息,这没关系:
状态码:200 正文:{ 数据:{ 存储库: { createdAt: '2017-09-29T17:01:25Z', 名称:“你好世界”, projectsUrl: 'https://github.com/TonyEdelweiss/hello-world/projects' } } }
第二个我只得到一个 '[Object]' )-:
状态码:200 正文:{数据:{存储库:{问题:[对象]}} }
谁能给个提示?
我还在 github API v4 文档中找到了这一点:“所有 GraphQL 操作都必须将它们的选择指定到返回标量值的字段,以确保得到明确的响应。”这可以解释为什么我没有得到数据,但没有提供进一步的指导。
【问题讨论】:
标签: javascript api github graphql