首页 > 解决方案 > 如何从后端获取数据,在浏览器端使用它?

问题描述

我是编程新手,听说这个网站上有些人很生气,但请不要生气。我正在创建一个 Web 应用程序,它有一个网页,还进行了一些计算并与数据库 (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中获取数据,因为浏览器无法识别与数据库相关的代码。

标签: javascriptnode.jsbackendtransfer

解决方案


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

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

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

服务器 -> 数据库:从数据库中获取数据,并可以对其进行任何操作。在您的情况下,数据应该提供给客户。


待办事项

第一步:搭建服务器。例如 express.js (google it)

第 2 步:学习如何从浏览器(客户端)获取数据 AJAX GET 是谷歌的关键字。

第 3 步:从您的服务器设置数据库连接并获取您的数据

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


推荐阅读