系统架构设计
采用前后端分离架构,前端使用 UniApp 框架开发微信小程序,后端采用 Python(如 Django 或 Flask)构建 RESTful API。数据库选择 MySQL 或 MongoDB 存储用户数据、陶艺作品信息及文化内容。
核心功能模块
用户模块 实现微信授权登录、个人信息管理、收藏与评论功能。通过微信 OpenID 实现免密登录,用户可编辑昵称、头像及个人简介。
文化展示模块 设计动态加载的坭兴陶文化百科,包含图文、视频及 3D 模型展示。采用懒加载技术优化性能,支持分类检索(如历史、工艺、大师作品)。
创新互动模块 集成 AR(如 ARKit/ARCore)实现陶器虚拟展示,用户可通过小程序扫描平面放置虚拟陶器。开发 DIY 设计工具,提供陶器纹样模板与色彩编辑器。
技术实现细节
前端实现
使用 UniApp 的 Vue 语法开发跨平台页面,通过 <canvas> 实现纹样绘制功能。调用微信 API(如 wx.login、wx.uploadFile)完成登录与媒体上传。
// 示例:微信登录代码
wx.login({
success: res => {
if (res.code) {
// 发送 code 至后端换取 openid
uni.request({
url: '/api/login',
data: { code: res.code }
});
}
}
});
后端实现 Python 后端使用 JWT 进行鉴权,数据库设计需包含用户表、作品表及评论表。AR 数据采用 GLTF 格式存储,通过 CDN 加速访问。
# 示例:Flask 登录 API
@app.route('/api/login', methods=['POST'])
def login():
code = request.json.get('code')
# 调用微信接口换取 openid
openid = get_openid(code)
token = generate_jwt(openid)
return jsonify({'token': token})
开发与测试计划
阶段划分
- 第 1-2 周:完成需求分析与 UI 设计,输出原型图
- 第 3-5 周:实现基础功能模块(用户、文化展示)
- 第 6-8 周:开发 AR 互动与 DIY 工具,联调接口
- 第 9 周:进行压力测试与用户体验优化
采用 Postman 进行接口测试,真机调试微信小程序兼容性。使用 Sentry 监控运行时错误,关键功能需达到 95% 以上单元测试覆盖率。


