1、客户端登入获取当前登入帐号信息
1.1、客户端发送帐号和密码到他们端
假设 用户ID:lqwvje 密码:123456
1.2、服务端响应客户端
服务端对客户端发送的帐号、密码、权限校验,如果都通过即返回用户信息( 用户ID:lqwvje 密码:123456 密钥:e10adc3949ba59abbe56e057f20f883e 权限:3),否则返回失败消息.
2、客户端通过API与服务端数据交互
2.1、客户端发起获取服务端数据请求
发送参数有:用户ID、参数1、参数2、数据签名(签名由 用户ID+参数1+参数2+用户密钥 组合生成的一个MD5值),注意:密钥不发送服务端,只参与MD5计算,假设:用户ID:lqwvje 参数1:测试数据1 参数2:测试数据2 密钥:e10adc3949ba59abbe56e057f20f883e 生成的签名为 cde52443d3e6c4c224baaf64cf904e91
2.2、服务端响应客户端
服务端对客户端发送的数据进行校验,
1、签名校验 用户ID+参数1+参数2+用户密钥 生成的MD5值与客户端发送的签名是否一致,(用户密钥不是客户端发送过来的,服务端存有客户信息)
2、权限校验
签名和权限校验都通过之后,服务端返回 客户端需要的数据和签名( 用户ID+返回的数据+用户密钥 生成一个MD5值)
3、权限控制
每个用户都有一个 int类型字段,一个int类型有32个Bit,每个Bit代表一个接口的权限,0、无权限 1、有权限。
源码下载链接: https://pan.baidu.com/s/17GGUkINToaLraoz89KhtJw 提取码: k7pf
视频讲解地址 https://www.bilibili.com/video/BV1cq4y157jz