一、文档说明

1、写在前面2、错误代码表

二、用户接口

1、发送邮箱验证码接口2、用户登录接口3、获取我的个人信息接口4、修改我的资料接口5、临时用户相关说明6、获取指定用户个人资料接口7、禁言用户接口8、禁止用户点歌接口9、取消用户的禁言和禁歌10、摸一摸用户接口11、第三方登录接口

三、房间接口

1、获取热门房间接口2、获取房间详情接口3、获取房间在线人员列表4、修改房间信息接口5、获取指定房间当前正在播放音乐接口6、获取聊天室指定房间的历史记录7、撤回消息接口

四、歌曲接口

1、歌曲搜索接口2、获取LRC歌词接口3、歌曲播放地址跳转地址4、管理员或房主切歌接口5、用户点歌接口6、指定房间当前的已点歌曲列表7、将已点歌曲列表中指定歌曲置顶8、管理或房主移除已点歌曲接口9、获取我点过的歌列表接口10、从我的歌单删除歌曲接口

五、Websocket

1、获取Websocket连接地址2、发送文字消息接口3、发送图片消息接口4、WebSocket消息解析说明文档

六、图片接口

1、搜索图片表情包2、上传图片接口

七、第三方合作接口

1、第三方接入聊天室使用手册与帮助文档2、聊天室绑定第三方独立域名3、SVG外链和iFrame播放器外链使用说明4、合作网站5、聊天室插件开发使用文档6、从零开始部署一个你自己的BBBUG音乐聊天室

八、下载相关

1、Windows客户端下载

九、部署相关

0、写在最前面1、部署API端步骤说明2、部署Websocket服务端步骤3、部署最后的前端部分Test
6、从零开始部署一个你自己的BBBUG音乐聊天室
手机阅读

扫描二维码阅读文章

本文说明

因很多小伙伴在部署时碰到一些问题,这里写一个简单的部署手册,以便小伙伴们碰到问题后可以快速查阅解决。

部署步骤

一、域名解析

首先,将你的域名解析到服务器对应的IP地址,我这里为了方便,解析了个三级通配域名:

记录 记录类型 目标IP
bbbug_api A 127.0.0.1
bbbug_www A 127.0.0.1
bbbug_ws A 127.0.0.1

接下来,我将bbbug_api.hamm.cn作为API端地址,bbbug_ws.hamm.cn作为websocket地址,bbbug_www.hamm.cn作为前端地址。

二、部署API端

准备工作,你需要给服务器安装redis、supervisor、MySQL等组件

  1. Clone我们代码仓库的API仓库:git clone https://gitee.com/bbbug_com/ChatAPI.git BBBUG_API
  2. 创建虚拟站点,目录指向BBBUG_API文件夹下的public目录:
  3. 配置Thinkphp在Nginx下的rewrite,并配置跨域头;
  4. 如果需要配置https,请百度查阅资料进行https的配置。

完整配置如下:

server
{
    listen 80;
    server_name bbbug_api.hamm.cn;
    index index.php index.html;
    
    #允许跨域header
    add_header Access-Control-Allow-Origin * always;
    add_header Access-Control-Allow-Headers * always;
    add_header Access-Control-Allow-Methods * always;
    add_header Access-Control-Max-Age 86400 always;
    
    #路径为你Clone项目的public目录
    root  /home/bbbug/BBBUG_API/public;
    
    #强制http跳转到https访问
    if ( $scheme = "http" ){
        rewrite  (.*)  https://$http_host$1;
    }
    
    #配置https
    listen 443 ssl http2; #我这里开启了http2 如不需要 删掉 http2
    ssl_certificate /usr/local/nginx/conf/ssl/hamm.cn/fullchain.cer; #证书地址
    ssl_certificate_key /usr/local/nginx/conf/ssl/hamm.cn/hamm.cn.key; #证书密钥
    ssl_session_timeout 10m;
    ssl_session_cache shared:SSL:10m;
    ssl_prefer_server_ciphers on;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; 
    #我这里启动了TLSv1.3 如果你服务器不支持,删掉即可
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains;preload" always; 
    #HSTS配置 如不需要 删掉本行
    
    #配置thinkphp伪静态rewrite规则
    location / {
        if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php?s=/$1 last;
            break;
        }
    }
    
    location ~ [^/]\.php(/|$)
    {
        try_files $uri =404;
        fastcgi_pass  unix:/tmp/php-cgi.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|mp3)
    {
        expires      30d;
    }
    access_log off;
}