首页 > 解决方案 > URl 在邮递员中工作,返回完整的新闻数组,但在 javascript 中返回空

问题描述

在邮递员中,当我在完整的文章中使用响应新闻属性下方的 URL 时

https://api.currentsapi.services/v1/search?country=us&language=en&apiKey="..."

但在 javascript 中,我得到一个空的新闻数组。

这是javascript:

function displayNewsResults(responseJson){
    console.log(responseJson)
}

let newsBaseUrl = 'https://api.currentsapi.services/v1/search'
let newsApiKey = '...';

function getNews(country) {

    let params = {
        country: country,
        language: 'us',
        apiKey: newsApiKey
    }

    let queryString = formatQueryParams(params);
    let url = newsBaseUrl + '?' + queryString;

    console.log(url)

    let req = new Request(url);
    
    fetch(req)
        .then(response => {
            if (response.ok) {
                return response.json();
            }
            else {
                throw new Error(response.statusText);
            }
        })
        .then(responseJson => displayNewsResults(responseJson))
        .catch(err => {
            $('#js-error-message-news').empty().text(`Something went wrong: ${err.message}`).show();
        })
}

函数displayNewsResults返回:

{status: "ok", news: Array(0), page: 1}

标签: javascriptfetchpostman

解决方案


代码似乎正确,结果也正确,但是错误是在您的代码中您调用 API 时将language参数设置usen


推荐阅读