Node.js 如何在html页面中显示MongoDB数据
我正在做一个项目,需要在HTML网页中显示用户数据。为此,我已经为API创建了POST和GET方法。我不知道如何在网页上显示数据Node.js 如何在html页面中显示MongoDB数据,node.js,mongodb,api,express,mongoose,Node.js,Mongodb,Api,Express,Mongoose,我正在做一个项目,需要在HTML网页中显示用户数据。为此,我已经为API创建了POST和GET方法。我不知道如何在网页上显示数据 PS:我不允许使用angular或react之类的框架。我必须和男人一起做 张贴方法: router.post('/adduserdata', (req, res) => { bcrypt.hash(req.body.password, 10, (err, hash) => { if (err) { res.
PS:我不允许使用angular或react之类的框架。我必须和男人一起做 张贴方法:
router.post('/adduserdata', (req, res) => {
bcrypt.hash(req.body.password, 10, (err, hash) => {
if (err) {
res.json({
error: err
});
}
else {
const user = new userdata({
name: req.body.name,
email: req.body.email,
password: hash,
mobile_no: req.body.mobile_no,
data_of_birth: req.body.data_of_birth
})
try {
user.save()
res.json({
message: "User Created.."
});
}
catch (err) {
res.send('Error');
}
}
});
});
获取方法:
router.get('/getuserdata', async (req, res) => {
try {
const user = await userdata.find().select("name email mobile_no data_of_birth")
res.json(user)
}
catch (err) {
res.send('Error ', err)
}
});
您基本上需要执行一些DOM处理和Ajax请求 在纯JS中:
const htmlElement = document.getElementById("YourElement");
const req = new XMLHttpRequest();
req.onreadystatechange = () => {
if (req.readyState == 4 && req.status == 200) {
const data = req.response;
console.log(data) // Shows the returning data, that will probably be a JSON OBJECT.
htmlElement.inneText = data.name;
}
};
xhttp.open("GET", "/getuserdata");
xhttp.send();
代码分类:
htmlElement
:创建一个常量变量,该变量包含具有所提供ID的HTML元素。req
:创建HTTP请求客户端。代码的其余部分都是关于这两个变量的。名为
req
的HTTP客户端向服务器发送请求,检查请求是否已加载(readyState 4
),并验证请求是否成功(HTTP status 200
)。如果满足这些条件,那么程序将使用请求返回的数据创建一个变量,并使用该数据填充HTML网页
Ps:您还可以使用
req.responseText
将json对象直接转换为DOMString。您基本上需要执行一些DOM处理和Ajax请求
在纯JS中:
const htmlElement = document.getElementById("YourElement");
const req = new XMLHttpRequest();
req.onreadystatechange = () => {
if (req.readyState == 4 && req.status == 200) {
const data = req.response;
console.log(data) // Shows the returning data, that will probably be a JSON OBJECT.
htmlElement.inneText = data.name;
}
};
xhttp.open("GET", "/getuserdata");
xhttp.send();
代码分类:
htmlElement
:创建一个常量变量,该变量包含具有所提供ID的HTML元素。req
:创建HTTP请求客户端。代码的其余部分都是关于这两个变量的。名为
req
的HTTP客户端向服务器发送请求,检查请求是否已加载(readyState 4
),并验证请求是否成功(HTTP status 200
)。如果满足这些条件,那么程序将使用请求返回的数据创建一个变量,并使用该数据填充HTML网页
Ps:您还可以使用
req.responseText
将json对象直接转换为DOMString。您需要在HTML中为用户数据设置一个占位符:
然后,在页面的javascript中,您需要向/getuserdata端点发出请求,然后使用API调用的结果修改DOM:
<script>
fetch('http://example.com/getuserdata')
.then(response => response.json())
.then(user => {
document.getElementById("name").innerHTML = user.name;
});
<script>
取('http://example.com/getuserdata')
.then(response=>response.json())
。然后(用户=>{
document.getElementById(“name”).innerHTML=user.name;
});
您需要在HTML中为用户数据设置占位符:
然后,在页面的javascript中,您需要向/getuserdata端点发出请求,然后使用API调用的结果修改DOM:
<script>
fetch('http://example.com/getuserdata')
.then(response => response.json())
.then(user => {
document.getElementById("name").innerHTML = user.name;
});
<script>
取('http://example.com/getuserdata')
.then(response=>response.json())
。然后(用户=>{
document.getElementById(“name”).innerHTML=user.name;
});