Nodejs,express.js 练习项目?

Nodejs,express.js 练习项目?

新手写了Hello world, 求node.js 练习项目推荐

我希望从小项目中练习提高自己,大家有什么推荐的吗?

越多越好,先谢了

5 回复

当然可以!以下是一些适合初学者的 Node.js 和 Express.js 的练习项目建议。这些项目不仅能够帮助你巩固基础知识,还能让你学习到一些实用的技能。

1. 待办事项列表应用

这是一个非常经典的项目,可以帮助你理解如何使用数据库来存储数据,并且通过 API 进行增删改查操作。

示例代码

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json());

let tasks = [];

// 获取所有任务
app.get('/tasks', (req, res) => {
    res.json(tasks);
});

// 添加新任务
app.post('/tasks', (req, res) => {
    const task = req.body;
    tasks.push(task);
    res.status(201).json(task);
});

// 删除任务
app.delete('/tasks/:id', (req, res) => {
    const id = parseInt(req.params.id);
    tasks = tasks.filter(task => task.id !== id);
    res.status(204).send();
});

app.listen(3000, () => console.log('Server running on port 3000'));

2. 博客系统

创建一个简单的博客系统,包括文章的发布、查看和删除功能。

示例代码

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json());

let posts = [];

// 获取所有文章
app.get('/posts', (req, res) => {
    res.json(posts);
});

// 发布新文章
app.post('/posts', (req, res) => {
    const post = req.body;
    posts.push(post);
    res.status(201).json(post);
});

// 删除文章
app.delete('/posts/:id', (req, res) => {
    const id = parseInt(req.params.id);
    posts = posts.filter(post => post.id !== id);
    res.status(204).send();
});

app.listen(3000, () => console.log('Server running on port 3000'));

3. 天气查询应用

创建一个简单的天气查询应用,用户可以通过输入城市名来获取该城市的天气信息。

示例代码

const express = require('express');
const axios = require('axios');
const app = express();

app.get('/weather/:city', async (req, res) => {
    const city = req.params.city;
    try {
        const response = await axios.get(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=YOUR_API_KEY`);
        res.json(response.data);
    } catch (error) {
        res.status(404).json({ message: 'City not found' });
    }
});

app.listen(3000, () => console.log('Server running on port 3000'));

4. 个人简历网站

创建一个个人简历网站,展示你的个人信息、技能、工作经验等。

示例代码

const express = require('express');
const app = express();

app.get('/', (req, res) => {
    res.send(`
        <html>
            <head><title>My Resume</title></head>
            <body>
                <h1>John Doe</h1>
                <p>Email: john@example.com</p>
                <p>Skills: JavaScript, Node.js, Express.js</p>
                <p>Experience: Full Stack Developer at XYZ Corp</p>
            </body>
        </html>
    `);
});

app.listen(3000, () => console.log('Server running on port 3000'));

希望这些项目能帮助你在实践中提升 Node.js 和 Express.js 的技能!


不错

可以借鉴一下http://www.9958.pw/post/nodejs_lesson

当然可以!Node.js 和 Express.js 是非常强大的工具组合,非常适合用来进行各种小项目的练习。以下是一些适合新手的 Node.js 和 Express.js 练习项目建议:

1. 待办事项列表应用 (To-Do List App)

这是一个非常常见的项目,可以帮助你熟悉数据库操作、路由、中间件等基本概念。

示例代码:

const express = require('express');
const app = express();
const port = 3000;

app.use(express.json());

let tasks = [];

app.get('/tasks', (req, res) => {
    res.json(tasks);
});

app.post('/tasks', (req, res) => {
    const task = req.body;
    tasks.push(task);
    res.status(201).json(task);
});

app.delete('/tasks/:id', (req, res) => {
    const id = req.params.id;
    tasks = tasks.filter(task => task.id !== id);
    res.status(204).send();
});

app.listen(port, () => {
    console.log(`Server running at http://localhost:${port}/`);
});

2. 博客系统

创建一个简单的博客系统,包含文章发布、浏览和删除功能。

示例代码:

const express = require('express');
const app = express();
const port = 3000;

app.use(express.json());

let posts = [];

app.get('/posts', (req, res) => {
    res.json(posts);
});

app.post('/posts', (req, res) => {
    const post = req.body;
    posts.push(post);
    res.status(201).json(post);
});

app.delete('/posts/:id', (req, res) => {
    const id = req.params.id;
    posts = posts.filter(post => post.id !== id);
    res.status(204).send();
});

app.listen(port, () => {
    console.log(`Server running at http://localhost:${port}/`);
});

3. 天气查询应用

通过 API 获取实时天气信息并显示给用户。

示例代码:

const express = require('express');
const axios = require('axios');
const app = express();
const port = 3000;

app.get('/weather/:city', async (req, res) => {
    const city = req.params.city;
    try {
        const response = await axios.get(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=YOUR_API_KEY`);
        res.json(response.data);
    } catch (error) {
        res.status(404).send('City not found');
    }
});

app.listen(port, () => {
    console.log(`Server running at http://localhost:${port}/`);
});

4. API 文档生成器

创建一个简单的 API 文档生成器,将 JSON 文件中的数据转化为 HTML 或 Markdown 格式的文档。

5. 在线聊天室

创建一个简单的在线聊天室,用户可以发送消息并在页面上看到其他用户的消息。

6. 个人简历网站

创建一个个人简历网站,可以通过 JSON 文件动态加载简历内容。

这些项目不仅可以帮助你提升技术能力,还可以丰富你的作品集。希望这些建议对你有所帮助!

回到顶部