从Node.js文件获取数据并将其显示在HTML / JS页面中

我是Node.js的新手,这是我的第一个项目。 我做了一个名为test.js的node.js文件。 它有一个arrays说一个。

现在我想制作一个HTML文件,在button click事件上调用这个test.js。 然后从该文件获取数据并将其发布到HTML文件的表格中。

我已经写了node.js文件,我可以在console.log(a)上看到结果。 但我不能理解如何将这个数组发送到HTML时,它会要求它。

同时,我search了一些代码。 请求到达服务器,但我总是从服务器得到错误响应。 为什么这样?

客户端 –

function fetch() { $.ajax({ type: 'POST', url: "http://127.0.0.1:8888", data: 'China', datatype: 'json', success: function (data) { alert("hi"); var ret = jQuery.parseJSON(data); $('#q').html(ret.msg); }, error: function (xhr, status, error) { alert("hii"); } }); 

服务器端 :

 http.createServer(function(request, response) { console.log("Request received"); response.writeHeader(200, {"Content-Type": "application/json"}); request.on('data', function (chunk) { console.log(chunk.toString('utf8')); consol.log(result); response.write(JSON.stringify({data : result})); }); response.end(); }).listen(8888); 

我可以在控制台上看到中国,但是我不回到客户端的结果数组。 这里的结果是一个数组,我在控制台上得到它的值。 只是我没有把它回到客户端。 任何帮助?

您应该首先设置一个服务器来处理请求。 我为此使用expressjs – http://expressjs.com/

这将允许您将nodejs作为Web应用程序运行。

在express JS中设置一个路由来为您的数据提供服务 – http://expressjs.com/api.html#express

 var express = require('express'); var app = express(); app.get('/data', function(req, res){ res.send('hello world'); //replace with your data here }); app.listen(3000); 

打开一个浏览器,inputhttp://MY_SERVER_ADDR:3000/data ,你应该看到你的输出。

接下来,您需要在您的HTML文件中附加一个甚至处理程序,触发$ .get()请求。 在您的$ .get调用中添加以前的url到您的数据中,并使用它进行操作。

 $('.my_selector').click(function(){ $.get('http://MY_SERVER_ADDR:3000/data', {}, function(data){ console.log(data) }); }); 

这应该让你去。