首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PokeAPI问题,无法获取数据

PokeAPI问题,无法获取数据
EN

Stack Overflow用户
提问于 2020-07-14 16:12:03
回答 1查看 107关注 0票数 0

因此,我尝试将PokeAPI用于教育目的,并运行以下代码:

代码语言:javascript
复制
const express = require('express')
const https = require('https')
const app = express()
const port = 3000

app.get('/', function(req,res){
    const url = 'https://pokeapi.co/api/v2/berry'
                //no uses el mismo nombre de argumentos
    https.get(url, function(resp) {
        resp.on('data', function(data){
            let datos = JSON.parse(data)
            console.log(datos)
        })
    })
    res.send('lol')
})



app.listen(port, () => console.log(`Example app listening on ${port} port!`))

在控制台中,我得到了这个:

代码语言:javascript
复制
undefined:1
{"count":64,"next":"https://pokeapi.co/api/v2/berry?offset=20&limit=20","previous":null,"results":[{"name":"cheri","url":"https://pokeapi.co/api/v2/berry/1/"},{"name":"chesto","url":"https://pokeapi.co/api/v2/berry/2/"},{"name":"pecha","url":"https://pokeapi.co/api/v2/berry/3/"},{"name":"rawst","url":"https://pokeapi.co/api/v2/berry/4/"},{"name":"aspear","url":"https://pokea




SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at IncomingMessage.<anonymous> (C:\UdemyWeb\PokeProject\app.js:11:30)
    at IncomingMessage.emit (events.js:311:20)
    at IncomingMessage.Readable.read (_stream_readable.js:512:10)
    at flow (_stream_readable.js:989:34)
    at resume_ (_stream_readable.js:970:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21)

我在互联网上到处询问,我甚至问过他们的问题,但没有得到任何回应,我认为这是我从API中获取数据的方式,但我想知道为什么只使用这个API而不是其他API,我尝试了weatherAPI和D&D API,没有任何问题。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-14 16:19:31

我敢打赌,其他apis也会出现这个问题。可能其他的反应都太小了,所以他们都是带着第一块来的。我建议使用像axios这样的http库。如果你想自己处理数据块,你必须收集所有的数据并监听end事件。

代码语言:javascript
复制
let data = '';
resp.on('data', function(chunk) {
    data += chunk;
});

resp.on('end', function() {
    console.log(JSON.parse(data));
});

我推荐你的另一本好书是5 Ways to Make HTTP Requests in Node.js

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62890757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档