当前位置: 首页 > 知识库问答 >
问题:

ReferenceError:未定义fetch

索吕恭
2023-03-14

我在node.js中编译代码时出现了这个错误,我该如何修复它呢?

RefernceError:未定义fetch

这就是我正在做的函数,它负责从特定的电影数据库中恢复信息。

function getMovieTitles(substr){  
  pageNumber=1;
  let url = 'https://jsonmock.hackerrank.com/api/movies/search/?Title=' + substr + "&page=" + pageNumber;
  fetch(url).then((resp) => resp.json()).then(function(data) {
    let movies = data.data;
    let totPages = data.total_pages;
    let sortArray = [];
    for(let i=0; i<movies.length;i++){
        sortArray.push(data.data[i].Title);
     }
    for(let i=2; i<=totPages; i++){
           let newPage = i;
           let url1 = 'https://jsonmock.hackerrank.com/api/movies/search/?Title=' + substr + "&page=" + newPage;

          fetch(url1).then(function(response) {
              var contentType = response.headers.get("content-type");
              if(contentType && contentType.indexOf("application/json") !== -1) {
                return response.json().then(function(json) {
                  //console.log(json); //uncomment this console.log to see the JSON data.

                 for(let i=0; i<json.data.length;i++){
                    sortArray.push(json.data[i].Title);
                 }

                 if(i==totPages)console.log(sortArray.sort());

                });
              } else {
                console.log("Oops, we haven't got JSON!");
              }
            });

        }
  })
  .catch(function(error) {
    console.log(error);
  });   
}

共有1个答案

包谭三
2023-03-14

未在节点中实现fetch API。

为此,您需要使用外部模块,如node-fetch。

将其安装到节点应用程序中,如下所示

npm i node-fetch --save

然后将下面的行放在正在使用fetch API的文件顶部:

const fetch = require("node-fetch");
 类似资料:
  • 问题内容: 我收到此错误消息, 这是我的标题。 以下是我的JavaScript代码 以下是HTML 我想在输入标签上显示日期选择器。 我正在使用Bootstrap V3.1。 问题答案: 在使用$或jQuery的脚本之前 添加jQuery库 , 以便可以在脚本中标识$。

  • 问题内容: 我正在尝试从Java代码调用Java脚本函数。 这是我的Java代码 这是我的Java脚本文件: 但是当我运行驱动程序类的主要方法时,它给我错误如下: 我所知道的是它需要一些脚本引擎来执行它。 为此,我在类路径中添加了rhino.jar文件,但这不起作用。 我没有得到如何解决这个错误。请帮助。谢谢。 问题答案: 不是JavaScript的一部分,而是Web浏览器提供的对象的一部分。所以

  • 我试图显示一个关于成功promise的弹出式通知,但我一直收到“ReferenceError:doNotification未定义”。如果我在html中单击按钮时触发doNotification,它就会工作。我的电子邮件功能和控制台一样工作。日志将适当的参数打印到控制台。我不确定在我的电子邮件功能中调用doNotification时为什么会出现此错误?

  • 问题内容: 我有以下Angular函数: 但是无论何时调用此函数,我都会进入 控制台。有人可以帮助我了解我在做什么错吗? 问题答案: 可能您尚未向控制器注入服务。有几种方法可以做到这一点。 请阅读有关DI的参考。然后,它变得非常简单:

  • 我有问题回应我的研究,仍然没有什么请帮助我 代码: const{Client,RichEmbed}=require('discord.js')const discord=require('discord.js')) mc\node\u模块\discord。js\src\client\actions\MessageCreate。js:31:14)在目标上。单元在WebSocketManager上导出

  • ReferenceError:未定义测试 我被困在这里了。我该如何解决这个问题。还有一个问题。消化和摩卡有关系吗?请谁来帮我解决这个问题