在Navicat或其他MySQL客户端中执行:
-- 执行听书模块数据库脚本
source book/src/main/resources/db/audiobook_schema.sql;
或者直接复制 audiobook_schema.sql 文件的内容到Navicat中执行。
确认以下表已创建:
audiobooks - 听书专辑表audiobook_chapters - 听书章节表user_listening_history - 用户听书历史记录表user_listening_progress - 用户听书进度表确认示例数据已插入(至少5条听书记录和10条章节记录)。
确保 application.properties 或 application.yml 中的数据库连接配置正确。
cd book
mvn spring-boot:run
访问以下接口验证后端是否正常:
http://localhost:8080/api/audiobook/recent?limit=8http://localhost:8080/api/audiobook/popular?limit=10http://localhost:8080/api/audiobook/{id} (替换{id}为实际的听书ID,如1)确保 books/utils/config.js 中的 BASE_URL 指向正确的后端地址:
BASE_URL: 'http://localhost:8080/api'
使用HBuilderX或其他工具启动uni-app项目。
原因: 数据库中没有数据或查询条件不正确 解决:
原因: 音频URL无效或格式不支持 解决:
原因: 用户未登录或API调用失败 解决:
原因: 数据库中该听书没有章节数据 解决:
audiobook_chapters 表是否有对应听书的章节audiobook_id 是否正确关联可以在Navicat中手动添加听书数据,或使用以下SQL:
INSERT INTO `audiobooks` (`title`, `author`, `narrator`, `cover`, `image`, `brief`, `desc`, `category_id`, `status`, `is_free`, `is_vip`, `chapter_count`, `total_duration`) VALUES
('听书名', '作者名', '主播名', '封面URL', '图片URL', '简介', '描述', 1, 1, 1, 0, 10, 36000);
INSERT INTO `audiobook_chapters` (`audiobook_id`, `chapter_number`, `title`, `audio_url`, `duration`, `is_free`) VALUES
(1, 1, '第一章', '音频URL', 3600, 1);