圆弧派博客 - 专注于网络技术 - AI
https://www.iarc.top/tag/AI/
-
五分钟开发ToDoListAPP后端
https://www.iarc.top/499.html
2025-08-14T21:15:00+08:00
使用CodeBuddy IDE五分钟内即可完成ToDoList基础后端开发,在这个AI工具发达的时代,我们已不需要将全部的知识装进大脑,只需有一个大的框架,细节交给AI即可快速建立项目。环境配置:Node.js将项目需求描述给codebuddy,我这里模型选的是GPT-5-nano,只需稍等几十秒钟,项目将会完全构建以下是codebuddy生成的项目(未进行任何修改)index.js:const express = require('express');
const app = express();
const port = process.env.PORT || 3000;
// In-memory storage
let todos = [];
let nextId = 1;
function findTodo(id) {
return todos.find(t => t.id === id);
}
app.use(express.json());
// Get all todos, with optional filtering by completion status
app.get('/todos', (req, res) => {
const completed = req.query.completed;
if (completed !== undefined) {
const isDone = completed === 'true';
return res.json(todos.filter(t => t.completed === isDone));
}
res.json(todos);
});
// Get a single todo by id
app.get('/todos/:id', (req, res) => {
const id = parseInt(req.params.id, 10);
const t = todos.find(t => t.id === id);
if (!t) return res.status(404).json({ error: 'Todo not found' });
res.json(t);
});
// Create a new todo
app.post('/todos', (req, res) => {
const { title, description } = req.body;
if (!title) return res.status(400).json({ error: 'title is required' });
const todo = {
id: nextId++,
title,
description: description || '',
completed: false,
createdAt: new Date().toISOString(),
updatedAt: new Date().toISOString()
};
todos.push(todo);
res.status(201).json(todo);
});
// Update an existing todo
app.put('/todos/:id', (req, res) => {
const id = parseInt(req.params.id, 10);
const t = todos.find(t => t.id === id);
if (!t) return res.status(404).json({ error: 'Todo not found' });
const { title, description, completed } = req.body;
if (title !== undefined) t.title = title;
if (description !== undefined) t.description = description;
if (completed !== undefined) t.completed = completed;
t.updatedAt = new Date().toISOString();
res.json(t);
});
// Delete a todo
app.delete('/todos/:id', (req, res) => {
const id = parseInt(req.params.id, 10);
const idx = todos.findIndex(t => t.id === id);
if (idx === -1) return res.status(404).json({ error: 'Todo not found' });
const removed = todos.splice(idx, 1);
res.json(removed[0]);
});
// Health check (optional)
app.get('/health', (req, res) => {
res.json({ status: 'ok', todoCount: todos.length });
});
app.listen(port, () => {
console.log(`Todo backend listening at http://localhost:${port}`);
});
package.json{
"name": "todolist-backend",
"version": "1.0.0",
"description": "In-memory Todo List backend using Node.js + Express",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"dependencies": {
"express": "^4.18.2"
}
}接下来进行npm安装项目运行所需的库,安装完后直接开始运行看看能不能正常跑起来测试阶段:测试接口:(内存存储,重启丢失数据)请求方式路径功能GET/todos获取所有待办,可通过查询参数 completed=true/false 进行筛选POST/todos创建待办,body 示例 { "title": "示例", "description": "可选" }GET/todos/:id获取指定待办PUT/todos/:id更新待办,支持 title、description、completedDELETE/todos/:id删除待办GET/health健康检查获取所有待办:目前初始化成功但还没有添加数据创建待办由于我没有进行前端的编写,这里直接在浏览器控制台模拟前端js发送请求完成接下来的测试,js代码如下:fetch("/todos", {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ "title": "待办名字", "description": "待办描述" })
})已成功创建两个待办事项,重新get请求todos可查看已成功添加通过id获取指定待办信息更新已有待办事项内容成功更新删除待办事项健康检测注意事项: 该版本的待办事项数据仅保存在内存,重启后将全部丢失,仅适合开发/测试阶段。不过接下来可以让codebuddy优化成使用json文件存储或者使用数据库(SQLite、PostgreSQL、MongoDB 等)存储数据,交给各位去继续探索了。评论区留言“CodeBuddy”抽5位送永久体验码!CodeBuddyIDE官网:https://www.codebuddy.ai/我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=6g36nynyzup
-
文字生成视频:StableVideo每天免费使用15次
https://www.iarc.top/406.html
2024-02-24T16:45:28+08:00
在这个短视频的时代,文字创作者们,是时候给你们的文字穿上华丽的视频外衣了!Sora目前好像没有开发使用,所以我找了一个免费(每天能免费用15次)且类似的先尝尝鲜,但是效果貌似还达不到Sora宣传的那样 ::(呵呵)使用方法1.打开stablevideo登陆,两个选项,一个是文生视频,一个是图生成视频,我这里以文生成视频为例:2.输入描述词(必须是英文)3.选择好要继续生成的视频的封面并选择运镜等配置4.开始生成视频(说白了还是图生视频)然后等个几分钟5.生成完成直接下载即可{message type="warning" content="生成的视频很短,达不到Sora的一分钟,只有5秒左右。"/}