【发布时间】:2015-08-06 19:54:44
【问题描述】:
我正在创建带有按钮的网页,以使用通过 ExpressJS、NodeJs 构建的 Rest API 从服务器加载数据。
var express=require('express');
var mysql=require('mysql');
var app=express();
var server=app.listen(3000,function(){
console.log("Express is running on port 3000");
});
app.get('/search',function(req,res){
var mysql=require('mysql');
var connection = mysql.createConnection({
connectionLimit : 100, //important
host : 'localhost',
user : 'root',
password : '',
database : 'node-test'
});
connection.connect();
connection.query('SELECT name from users', function(err, rows, fields) {
if (err) throw err;
var data=[];
for(i=0;i<rows.length;i++){
data.push(rows[i].name);
}
res.end(JSON.stringify(data));
});
});
此应用程序的 HTML 页面如下所示
<button >Load from server</button>
<div></div>
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(document).on('click','button', function(){
$.ajax({
url: "http://localhost:3000/search"
}).done(function() {
$('div').append("done !!! - ");
});
});
});
</script>
当我在浏览器中运行http://localhost:3000/search 时,它会为我提供数据库中带有“名称”的输出。但是如何查看 index.html 页面并使其在按钮单击时加载。
【问题讨论】:
-
我认为您可能想使用 express 加载 html 文件,因为您可以使用 express serve static github.com/expressjs/serve-static
标签: html node.js express mean-stack