gpt4 book ai didi

javascript - 如何检索 github graphql api 上的多个问题(使用 javascript)?

转载 作者:行者123 更新时间:2023-11-28 04:07:41 25 4
gpt4 key购买 nike

我想要实现的目标是使用 JavaScript 在 github 存储库中读取并稍后编写问题标签

到目前为止,我已经能够获得身份验证并检索存储库中的一些数据,但我没有找到在单个问题或一组问题上检索数据的方法。

这是我正在使用的代码。

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() 中,我得到以下内容,这是可以的:

Status code: 200 Body: { data: { repository: { createdAt: '2017-09-29T17:01:25Z', name: 'hello-world', projectsUrl: 'https://github.com/TonyEdelweiss/hello-world/projects' } } }

在第二个我只得到一个“[Object]”)-:

Status code: 200 Body: { data: { repository: { issues: [Object] } } }

谁能给点提示吗?

我还在 github API v4 文档中找到了这一点:“所有 GraphQL 操作都必须将其选择指定为返回标量值的字段,以确保得到明确的响应。”这可能可以解释为什么我没有获取数据,但没有提供进一步的指导。

最佳答案

您的请求实际上运行良好。但使用 console.log 可以查看的最大深度默认为 2。您可以使用 util.inspect要更改它,请将深度设置为 null 以查看完整对象:

const util = require('util');

.....

console.log('Body: ', util.inspect(body, {depth: null}));

关于javascript - 如何检索 github graphql api 上的多个问题(使用 javascript)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46546908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com