如何将数据从前端javascript传递到后端node.js

时间:2018-11-26 17:26:52

标签: javascript node.js excel frontend backend

我正在尝试将excel文件中的数据解析为前端的json,然后将json数据发送到后端的node.js进行处理和操作。理想情况下,如果成功,后端将返回一个状态,以便在前端显示。完成noob前端和后端javascript。我需要使用jquery还是ajax?这是我的前端代码。

<html>
<head>
    <meta charset="utf-8">
    <script type="text/javascript" src="https://catamphetamine.github.io/read-excel-file/read-excel-file.min.js"></script>
</head>
<body>
    <H3>Read Excel File Client Side</H3>
    <input type="file" id="input" />
    <pre id="result1"></pre>
    <pre id="result2"></pre>
</body>
<script>
    var input = document.getElementById('input');
    input.addEventListener('change', function () {
        readXlsxFile(input.files[0], {
            dateFormat: 'MM/DD/YY'
        }).then(function (data) {
            // `data` is an array of rows
            // each row being an array of cells.
            document.getElementById('result1').innerText = data;

            document.getElementById('result2').innerText = JSON.stringify(data, null, 2)
        }, (error) => {
            console.error(error)
            alert("Error while parsing Excel file. See console output for the error stack trace.")
        })
    })
</script>
</html>

1 个答案:

答案 0 :(得分:0)

因此从技术上讲,您可以在Frontend上执行此操作,但这浪费了客户端资源。 在编写前端应用程序时,必须考虑如何使用您的应用程序。您需要假设,客户端将在低端设备(例如旧智能手机)上使用它。因此,我们正在尝试将大量计算移至后端部分。

我要告诉您的是,只通过网站接收Excel文件,将其发送到Node.js后端并在那里进行处理,以便前端可以专注于UserExperience(UX),后端可以专注于业务逻辑。

至于是否需要jquery或ajax->否,则不需要它们。 jQuery是一个库,它使一天过去可以轻松地在不同的浏览器上执行相同的代码,因为浏览器具有不同的API(有些拥有更多,有些拥有更少的API,并不是所有的东西都像现在这样统一)。我认为在2018年,完全没有理由在现代浏览器中使用jQuery,因为浏览器具有出色的API,可以在没有依赖的情况下完成相同的事情)。至于AJAX,您可以使用它,但是由于您是初学者,所以我建议不要使用它。

尝试使用表单元素和文件输入构建超简单的HTML页面,并将其发送给您的Node.js后端服务器。然后尝试编写Node.js服务器(我建议不要使用任何现成的解决方案,因为您不会了解太多),然后将此文件转换为有意义的数据结构。然后,您可以对其进行处理并将响应发送到您的前端页面。