Node.js提取返回空数据

问题描述 投票:0回答:1

我正在尝试使用fetch从API中获取一些数据,并且控制台日志显示[],但是,当我使用Postman进行相同的请求时,它将成功返回JSON。我在做什么错?

let fetch = require("node-fetch");

const url_deals = 'http://www.cheapshark.com/api/1.0/deals';

function getDealInfo(dealID){
    let new_url = new URL(url_deals + "?id=" + dealID);

    fetch(new_url, {method : 'GET'})
        .then(data =>{
            data.json().then(out => {
                console.log(out);
            })
        })
}

getDealInfo("X8sebHhbc1Ga0dTkgg59WgyM506af9oNZZJLU9uSrX8%253D");

Postman screenshot

node.js
1个回答
0
投票

问题出在您的身份证上。您已经逃脱了两次。

getDealInfo("X8sebHhbc1Ga0dTkgg59WgyM506af9oNZZJLU9uSrX8%253D");

您代码中的ID为X8sebHhbc1Ga0dTkgg59WgyM506af9oNZZJLU9uSrX8%253D,但在屏幕截图中为X8sebHhbc1Ga0dTkgg59WgyM506af9oNZZJLU9uSrX8%3D。查看倒数第三位。


0
投票

使用该ID我也一无所获。

请注意,如果您不使用id发出请求,则ID与您的格式不匹配,例如

"dealID":"tnXImZO%2FYSnkve2w7O5fHy77qn0e8uvWFbkiT%2Fjb7r0%3D"

似乎您的某个地方有多余的URI编码。

© www.soinside.com 2019 - 2024. All rights reserved.