如何从后端获取数据,以在浏览器端使用它?

时间:2020-04-19 18:15:48

标签: javascript node.js backend transfer

我是编程新手,听说这个网站上的一些人很生气,但请不要生气。我正在创建一个Web应用程序,该应用程序具有一个网页,还可以进行Som计算并可以与数据库(NeDB)一起使用。我有一个index.js

    const selects = document.getElementsByClassName("sel");
    const arr = ["Yura", "Nairi", "Mher", "Hayko"];
    for (let el in selects) {
      for (let key in arr) {
        selects[el].innerHTML += `<option>${arr[key]}</option>`;
      }
    }

我有一个函数,用数组中的数据填充选择元素。

在另一个名为getData.js的文件中:

    var Datastore = require("nedb");
    var users = new Datastore({ filename: "players" });
    users.loadDatabase();

    const names = [];

    users.find({}, function (err, doc) {
       for (let key in doc) {
          names.push(doc[key].name);
       }
    });

我有一些代码从db获取数据并将其放入数组。而且我需要在上面提到的index.js中使用该数据,但是问题是我不知道如何将数据从getData.js传输到index.js。我已经试过module.exports,但是它不起作用,浏览器控制台说它不能识别require关键字,我也不能直接在index.js中获取数据,因为浏览器无法识别与数据库相关的代码。

2 个答案:

答案 0 :(得分:1)

您需要提供连接到数据库的服务器。

浏览器->服务器->数据库

浏览器->服务器:服务器提供浏览器(客户端)可以从中获取数据的端点。 https://expressjs.com/en/starter/hello-world.html

服务器-> DB:将数据从数据库中取出,并可以用它做任何想做的事情。在您的情况下,应将数据提供给客户。


待办事项

步骤1:设置服务器。例如,使用express.js(用谷歌搜索)

第2步:了解如何从浏览器(客户端)获取数据AJAX GET是Google的关键字。

第3步:从服务器建立数据库连接并获取数据

第4步:对数据做任何想做的事情。

答案 1 :(得分:0)

起初我以为这是一种简单的方法,但是我对他们进行了一些研究,并意识到我没有足够的信息来了解它的实际工作原理。现在,我使用了promises和Templete引擎ejs解决了这个问题。谢谢大家的时间。感谢您的帮助。