10 回复
Node.js 网站开发两天成果展示,功能尚待完善,持续更新中
大家好!经过这两天的努力,我们终于完成了一个初步的Node.js网站。虽然还有很多功能需要完善,但我还是想跟大家分享一下目前的进展。欢迎各位提出宝贵的意见和建议!
网站地址
您可以点击下方链接来访问我们的网站: 传送门
测试账号
为了方便大家体验,我们提供了一个测试账号,账号密码都是 laoshe
。
功能介绍
-
登录功能
- 我们实现了一个简单的登录功能,用户可以使用上面提供的账号进行登录。
- 登录页面使用了基本的HTML表单,并通过Express框架处理表单提交。
-
主页
- 登录后,用户会被重定向到主页。
- 主页显示了一些欢迎信息以及用户的登录状态。
-
错误处理
- 对于一些常见的错误(如用户名或密码错误),我们在前端和后端都做了相应的提示。
示例代码
Express 框架搭建服务器
const express = require('express');
const bodyParser = require('body-parser');
const session = require('express-session');
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(session({
secret: 'secret',
resave: false,
saveUninitialized: false
}));
// 用户信息模拟
let users = {
laoshe: 'laoshe'
};
app.get('/', (req, res) => {
if (req.session.user) {
res.send(`欢迎回来,${req.session.user}`);
} else {
res.redirect('/login');
}
});
app.post('/login', (req, res) => {
const { username, password } = req.body;
if (users[username] === password) {
req.session.user = username;
res.redirect('/');
} else {
res.send('用户名或密码错误');
}
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
登录页面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login Page</title>
</head>
<body>
<h1>Login</h1>
<form action="/login" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br>
<button type="submit">Login</button>
</form>
</body>
</html>
结语
感谢您的关注和支持!我们会继续努力完善功能,提升用户体验。如果您有任何问题或建议,请随时联系我!
希望这个示例能够帮助你理解Node.js网站的基本结构和功能。祝你开发顺利!
图片加载好快
测试地址?
不错,介绍一下架构吧?
我会告诉你现在是503么
放在openshift上的 一天掉一次 现在已经启动了
已经启动 openshift 很不稳定啊 还是放在自己vps上
Node.js 网站开发两天成果展示
大家好!经过这两天的努力,我完成了一个简单的 Node.js 网站开发。虽然功能还不完善,但已经可以基本运行了。欢迎大家访问并提出宝贵的意见和建议。
项目地址
你可以通过以下链接访问我的项目:
- 网址: 传送门
测试账号
为了方便大家测试,请使用以下账号登录:
- 用户名: laoshe
- 密码: laoshe
主要功能
目前,该网站主要有以下几个功能:
-
登录页面
- 用户可以通过输入用户名和密码进行登录。
- 目前支持的基本验证是通过硬编码的用户名和密码进行的。
-
首页
- 登录成功后,用户会跳转到首页。
- 首页显示一些欢迎信息,并提供一个简单的导航栏。
-
退出功能
- 用户可以点击退出按钮来注销当前登录状态。
示例代码
app.js (主要入口文件)
const express = require('express');
const session = require('express-session');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(session({
secret: 'secret',
resave: false,
saveUninitialized: true
}));
let users = {
'laoshe': 'laoshe'
};
app.get('/', (req, res) => {
if(req.session.user) {
res.send(`<h1>欢迎 ${req.session.user}</h1>
<form action="/logout" method="post">
<input type="submit" value="退出">
</form>`);
} else {
res.redirect('/login');
}
});
app.get('/login', (req, res) => {
res.send(`
<form action="/login" method="post">
用户名: <input type="text" name="username"><br>
密码: <input type="password" name="password"><br>
<input type="submit">
</form>
`);
});
app.post('/login', (req, res) => {
const { username, password } = req.body;
if(users[username] === password) {
req.session.user = username;
res.redirect('/');
} else {
res.send('登录失败,请检查用户名和密码!');
}
});
app.post('/logout', (req, res) => {
req.session.destroy((err) => {
if(err) throw err;
res.redirect('/login');
});
});
app.listen(3000, () => console.log('服务器启动在 http://localhost:3000'));
以上就是这两天的主要成果,希望大家喜欢。如果有任何问题或建议,请随时留言,我会继续努力完善这个项目!
感谢大家的支持!
希望这个简短的介绍能帮助你了解项目的现状和发展方向。