【发布时间】:2020-06-22 16:26:32
【问题描述】:
我转换了我的代码,以便不需要额外的 node_modules,我可以只使用一些 HTTPS GET 请求,问题是当我尝试管道 /releases/ 这基本上是一个原始 JSON 文件时,我的代码需要它回来并且出现像SyntaxError: Unexpected end of JSON input 这样的问题,因为由于某种原因,当我 console.log() 所谓的 JSON 数组时,结尾没有用 ] 或 } 完成。所以我尝试将响应传送到一个数组中,但现在我得到一个错误:dest.on isn't a function,
代码:
https.get({hostname: `api.github.com`, path: `/repos/${username}/${reponame}/releases`, headers: {'User-Agent': 'a user agent'}}, async (response) => {
var file = new Array()
response.pipe(file)
response.on('end', async function() { //issue occurs at response.pipe ???
var releases = JSON.parse(fs.readFileSync('./releases.json', 'utf8'))
console.log(releases)
我从 Github 访问的 JSON 文件如下所示:https://api.github.com/repos/davidmerfield/randomColor/releases(随机存储库)
但是,我的文件 (releases.json) 看起来像 this
编辑:我进行了广泛的测试。我使用了我的 pkg 输出的相同 JSON 文件,使用 fs 等读取它,一切似乎都很好。所以问题很可能是 https / response
【问题讨论】:
标签: javascript node.js json https get