Ai编程cursor + sealos + devBox实现登录以及用户管理增删改查(十三)

一、什么是 Sealos?

Sealos 是一款以 Kubernetes 为内核的云操作系统发行版。它以云原生的方式,抛弃了传统的云计算架构,转向以 Kubernetes 为云内核的新架构,使企业能够像使用个人电脑一样简单地使用云。

二、适用场景

业务运行平台,它能完美支持 Java、Go、Python、PHP 等各类应用,不受编程语言限制。该平台为应用提供稳定的运行环境,并解决后端依赖问题,例如数据库、对象存储和消息队列等。更进一步,它还能灵活处理应用配置管理、服务发现、公网暴露,以及自动伸缩等问题。

三、sealos应用步骤

1、官网注册账号

sealos官网

sealos是收费的、新用户注册有5元的额度,可以满足我们测试项目了

2、进入主页面板、访问devBox创建项目

在这里插入图片描述
在这里插入图片描述

3、优先创建后端项目,这里采用nodeJs进行接口开发

在这里插入图片描述
在这里插入图片描述

这里可以选择CPU和内存配置,端口和接口访问地址都可以自定义,这里采用sealos生成默认访问地址

4、创建项目成功后,自行选择编辑器,这里通过cursor打开项目

在这里插入图片描述
在这里插入图片描述

5、首页进入数据库,这里选择mongo数据库,进行配置部署

在这里插入图片描述
在这里插入图片描述

6、ctrl + i 打开ai辅助,输入开发需求提示词
请为我开发一个基于 Node.js 和Express 框架的 用户注册登录模块管理后端项目。项目需要实现以下五个 RESTful API 接口:1. 查询所有已注册用户- 接口名: GET /api/getUserList- 功能: 从数据库的'user'集合中查询并返回所有用户信息- 参数: 创建时间createTime、用户名username、是否黑名单用户isBlackList,参数可为空- 返回: 包含所有用户信息的数组
2. 注册新用户- 接口名: POST /api/register- 功能:'user'集合中添加新的用户名以及密码- 参数:{"username": string, // 用户名"password":string, // 密码}- 返回: 新用户信息对象,包含自动生成的唯一 id
3. 更新用户黑名单状态信息- 接口名: POST /api/updateUserBlackStatus/- 功能: 根据 id 更新用户黑名单状态- 参数: id- 返回: 更新后的用户信息
4. 删除用户- 接口名: POST /api/delUser/- 功能: 根据 id 删除指定用户- 参数: id- 返回: 删除操作的结果状态
5. 登录- 接口名: POST /api/login/- 功能: 根据 用户名查询校验匹配 user集合中是否包含该用户,用户名密码是否正确- 参数: username- 返回:登录匹配结果状态以及生成token
技术要求:1. 使用 Express 框架构建 API,express-jwt校验token的有效性
2. 使用 MongoDB 作为数据库,通过 Mongoose 进行数据操作
3. 实现适当的错误处理和输入验证
4. 使用异步/等待(async/await)语法处理异步操作
5. 遵循 RESTful API 设计原则
6. 添加基本的日志记录功能
7、支持用户查询多参数过滤以下是数据库连接方式:此处为sealos部署db-demo数据库生成的数据库连接参数
7、Ai自动生成文件以及相关代码

在这里插入图片描述

8、安装相关依赖并运行node项目
npm init -y
npm install express mongoose express-jwt jsonwebtoken bcryptjs winston

在这里插入图片描述
api项目正常运行

9、Ai生成接口测试用例

在这里插入图片描述

访问地址为api-demo外网地址,请帮我用curl生成这5个接口测试用例以及接口成功和不成功的返回值,

在这里插入图片描述

生成的测试用例这里需要记录,后续前端提示词需要用到

1. 注册用户 (POST /api/register)# 成功注册
curl -X POST https://jivitzjasquu.sealoshzh.site/api/register \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 成功返回示例
{"id": "65f7e8a12345678901234567","username": "testuser","createTime": "2024-03-18T10:30:00.000Z"
}# 用户名已存在
curl -X POST https://jivitzjasquu.sealoshzh.site/api/register \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 失败返回示例
{"message": "Username already exists"
}2. 登录 (POST /api/login)# 成功登录
curl -X POST https://jivitzjasquu.sealoshzh.site/api/login \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 成功返回示例
{"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}# 登录失败(错误的密码)
curl -X POST https://jivitzjasquu.sealoshzh.site/api/login \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "wrongpassword"}'# 失败返回示例
{"message": "Invalid credentials"
}3. 查询用户列表 (GET /api/getUserList)# 获取所有用户(需要token)
curl -X GET https://jivitzjasquu.sealoshzh.site/api/getUserList \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 带参数查询
curl -X GET "https://jivitzjasquu.sealoshzh.site/api/getUserList?username=test&isBlackList=false&createTime=2024-03-01" \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
[{"_id": "65f7e8a12345678901234567","username": "testuser","isBlackList": false,"createTime": "2024-03-18T10:30:00.000Z"}
]# 未授权访问(无token或token无效)
{"message": "Invalid token"
}4. 更新用户黑名单状态 (POST /api/updateUserBlackStatus/:id)# 更新用户状态
curl -X POST https://jivitzjasquu.sealoshzh.site/api/updateUserBlackStatus/65f7e8a12345678901234567 \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
{"_id": "65f7e8a12345678901234567","username": "testuser","isBlackList": true,"createTime": "2024-03-18T10:30:00.000Z"
}# 用户不存在
{"message": "User not found"
}5、删除用户 (POST /api/delUser/:id)# 删除用户
curl -X POST https://jivitzjasquu.sealoshzh.site/api/delUser/65f7e8a12345678901234567 \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
{"message": "User deleted successfully"
}# 用户不存在
{"message": "User not found"
}
10、devBox创建前端项目,这里选择vue3

在这里插入图片描述
在这里插入图片描述

11、cursor输入提示词,生成前端相关文件以及代码
请为我开发一个基于 Vue 3 的用户管理系统。要求如下:1. 功能需求:- 包含登录/注册功能- 包含首页/用户管理路由以及模块- 首页统计用户总数量/黑名单用户数量    - 用户管理展示全部用户列表数据,搜索参数为用户名称,黑名单状态查询过滤显示
2. UI/UX 设计要求:- 全屏响应式设计,适配不同设备- 拥有亮色模式和夜间模式- 现代化、简洁的界面风格- 丰富的色彩运用,但保持整体和谐- 流畅的交互动画,提升用户体验- 在按钮和需要的地方添加上图标要求:1. 直接以当前目录作为项目根目。注意 此目录已经初始化完了vue3项目结构 直接修改即可
2. 如果需要执行命令,请暂停创建文件,让我先执行命令
3. 请你根据我的需要,一步一步思考,给我开发这个项目。特别是UI部分 一定要足够美观和现代化
12、安装相关依赖,并进行下一步
npm install vue-router@4 pinia @vueuse/core naive-ui @iconify/vue sass

在这里插入图片描述

输入联调提示词

下面是系统的接口,我已写清楚接口信息,请进行联调1. 注册用户 (POST /api/register)# 成功注册
curl -X POST https://jivitzjasquu.sealoshzh.site/api/register \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 成功返回示例
{"id": "65f7e8a12345678901234567","username": "testuser","createTime": "2024-03-18T10:30:00.000Z"
}# 用户名已存在
curl -X POST https://jivitzjasquu.sealoshzh.site/api/register \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 失败返回示例
{"message": "Username already exists"
}2. 登录 (POST /api/login)# 成功登录
curl -X POST https://jivitzjasquu.sealoshzh.site/api/login \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "password123"}'# 成功返回示例
{"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}# 登录失败(错误的密码)
curl -X POST https://jivitzjasquu.sealoshzh.site/api/login \-H "Content-Type: application/json" \-d '{"username": "testuser", "password": "wrongpassword"}'# 失败返回示例
{"message": "Invalid credentials"
}3. 查询用户列表 (GET /api/getUserList)# 获取所有用户(需要token)
curl -X GET https://jivitzjasquu.sealoshzh.site/api/getUserList \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 带参数查询
curl -X GET "https://jivitzjasquu.sealoshzh.site/api/getUserList?username=test&isBlackList=false&createTime=2024-03-01" \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
[{"_id": "65f7e8a12345678901234567","username": "testuser","isBlackList": false,"createTime": "2024-03-18T10:30:00.000Z"}
]# 未授权访问(无token或token无效)
{"message": "Invalid token"
}4. 更新用户黑名单状态 (POST /api/updateUserBlackStatus/:id)# 更新用户状态
curl -X POST https://jivitzjasquu.sealoshzh.site/api/updateUserBlackStatus/65f7e8a12345678901234567 \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
{"_id": "65f7e8a12345678901234567","username": "testuser","isBlackList": true,"createTime": "2024-03-18T10:30:00.000Z"
}# 用户不存在
{"message": "User not found"
}5、删除用户 (POST /api/delUser/:id)# 删除用户
curl -X POST https://jivitzjasquu.sealoshzh.site/api/delUser/65f7e8a12345678901234567 \-H "Authorization: Bearer YOUR_TOKEN_HERE"# 成功返回示例
{"message": "User deleted successfully"
}# 用户不存在
{"message": "User not found"
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/62938.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS学习记录02

CSS颜色 指定颜色是通过使用预定义的颜色名称&#xff0c;或RGB&#xff0c;HEX&#xff0c;HSL&#xff0c;RGBA&#xff0c;HSLA值。 CSS颜色名 在CSS中&#xff0c;可以使用颜色名称来指定颜色&#xff1a; CSS背景色 您可以为HTML元素设置背景色&#xff1a; <h1 s…

用micropython 操作stm32f4单片机实现串口通讯

from buzzer import Buzzer import pyb import machine # 导入 machine 模块以访问硬件功能 import time # 导入 time 模块以使用与时间相关的函数 from TOFSense import TOFSense_F #导入TOFSense_F板块 import binascii #二进制到 ASCII 的转换&#xff08;编码&#xff09…

postman中获取随机数、唯一ID、时间日期(包括当前日期增减)截取指定位数的字符等

在Postman中&#xff0c;您可以使用内置的动态变量和编写脚本的方式来获取随机数、唯一ID、时间日期以及截取指定位数的字符。以下是具体的操作方法&#xff1a; 一、postman中获取随机数、唯一ID、时间日期&#xff08;包括当前日期增减&#xff09;截取指定位数的字符等 获取…

《智能体雏形开发(高阶实操)》开发计划概述

智能体雏形开发计划 通过本计划,逐步完成一个可以真实运行的智能体雏形。 最终完成一个**“用户日志文件生成日报,日报再进一步汇总成周报”**的任务驱动型智能体雏形 第一阶段:基础准备与环境搭建 1. 学习基础知识 了解智能体的概念、类型和技术框架。学习大模型(如阿里…

【VUE3】npm : 无法加载文件 D:\Program\nodejs\node_global\npm.ps1,因为在此系统上禁止运行脚本。

npm : 无法加载文件 D:\Program\nodejs\npm.ps1。未对文件 D:\Program\nodejs\npm.ps1 进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息&#xff0c;请参阅 https:/go.microsoft.com/fwlink/?LinkID135170 中的 about_ Execution_Policies。…

级联树结构TreeSelect和上级反查

接口返回结构 前端展示格式 前端组件 <template><div ><el-scrollbar height"70vh"><el-tree :data"deptOptions" :props"{ label: label, children: children }" :expand-on-click-node"false":filter-node-me…

Ansible自动化一键部署单节点集群架构

自动化部署利器&#xff1a;Ansible 一键部署脚本 在现代IT基础设施管理中&#xff0c;Ansible以其简洁、强大的自动化能力脱颖而出。以下是精心打造的Ansible自动化一键部署脚本&#xff0c;旨在简化部署流程&#xff0c;提升效率&#xff0c;确保一致性和可靠性。 通过这个…

基于智能语音交互的智能呼叫中心工作机制

在智能化和信息化不断进步的现代&#xff0c;智能呼叫中心为客户提供高质量、高效率的服务体验&#xff0c;提升众多品牌用户的满意度和忠诚度。作为实现智能呼叫中心的关键技术之一的智能语音交互技术&#xff0c;它通过集成自然语言处理&#xff08;NLP&#xff09;、语音识别…

CLIP模型也能处理点云信息

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…

【开源免费】基于Vue和SpringBoot的服装生产管理系统(附论文)

博主说明&#xff1a;本文项目编号 T 066 &#xff0c;文末自助获取源码 \color{red}{T066&#xff0c;文末自助获取源码} T066&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…

R语言机器学习论文(六):总结

文章目录 介绍参考文献介绍 本文采用R语言对来自进行数据描述、数据预处理、特征筛选和模型构建。 最后我们获得了一个能有效区分乳腺组织的随机森林预测模型,它的性能非常好,这意味着它可能拥有非常好的临床价值。 在本文中,我们利用R语言对来自美国加州大学欧文分校的B…

CSP/信奥赛C++语法基础刷题训练(36):洛谷P11229:[CSP-J 2024] 小木棍

CSP/信奥赛C语法基础刷题训练&#xff08;36&#xff09;&#xff1a;洛谷P11229&#xff1a;[CSP-J 2024] 小木棍 题目描述 小 S 喜欢收集小木棍。在收集了 n n n 根长度相等的小木棍之后&#xff0c;他闲来无事&#xff0c;便用它们拼起了数字。用小木棍拼每种数字的方法如…

Kibana server is not ready yet

遇到“Kibana server is not ready yet”错误通常表示Kibana无法连接到Elasticsearch。以下是一些常见原因及其解决方案&#xff1a; 1.常见原因 1.1.Elasticsearch未运行&#xff1a; 确保Elasticsearch服务已启动并正常运行。您可以通过访问 http://localhost:9200 来检查…

中间件之Elasticsearch

一、简介 Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎&#xff0c;基于RESTful web接口。Elasticsearch是用Java开发的&#xff0c;并作为Apache许可条款下的开放源码发布&#xff0c;是当前流行的企业级搜索引擎。Elasticsearch…

常见排序算法总结 (三) - 归并排序与归并分治

归并排序 算法思想 将数组元素不断地拆分&#xff0c;直到每一组中只包含一个元素&#xff0c;单个元素天然有序。之后用归并的方式收集跨组的元素&#xff0c;最终形成整个区间上有序的序列。 稳定性分析 归并排序是稳定的&#xff0c;拆分数组时会自然地将元素分成有先后…

http(请求方法,状态码,Cookie与)

目录 1.http中常见的Header(KV结构) 2.http请求方法 2.1 请求方法 2.2 telnet 2.3 网页根目录 2.3.1 概念 2.3.2 构建一个首页 2.4 GET与POST方法 2.4.1 提交参数 2.4.2 GET与POST提交参数对比 2.4.3 GET和POST对比 3.状态码 3.1 状态码分类 3.2 3XXX状态码 3.2 …

365天深度学习训练营-第P6周:VGG-16算法-Pytorch实现人脸识别

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 文为「365天深度学习训练营」内部文章 参考本文所写记录性文章&#xff0c;请在文章开头带上「&#x1f449;声明」 &#x1f37a;要求&#xff1a; 保存训练过…

Laravel 代理收益排行榜

创建了一个收入表 CREATE TABLE income_logs (id int(11) unsigned NOT NULL AUTO_INCREMENT,order_id int(11) NOT NULL COMMENT 订单ID,type int(11) NOT NULL DEFAULT 0 COMMENT 类型 0 支出 1收入,user_id int(11) NOT NULL COMMENT 消费者用户,price decimal(10,2) NOT…

【Linux】设计文件系统(C实现)

要求&#xff1a; (1)可以实现下列几条命令 dir 列文件目录 create 创建文件 delete 删除文件 read 读文件 write 写文件 (2)列目录时要列出文件名、存取权限&#xff08;八进制&#xff09;、文件长度、时间&#xff08;创建时间&#xff0c;修改时间以及…

开源用户体验调查管理平台Formbricks

什么是 Formbricks &#xff1f; Formbricks 是一个开源的调查和体验管理平台&#xff0c;旨在帮助用户在应用内、网站、链接和电子邮件中收集用户和客户的反馈。它为开发者提供了一个隐私优先的替代方案&#xff0c;支持自托管或使用 Formbricks 云服务&#xff0c;并提供了丰…