云公共是网易云的公共支撑部门,提供统一的帐号、官网、运营后台及统一的控制台导航及组件等。
云帐号
云帐号提供了共用的登陆注册等帐号相关功能,同时提供了云帐号SDK,用于提供登陆用户信息、多语言信息等公共信息
云帐号的登陆状态使用了refresh token + access token方式管理登陆状态,由前端发起获取access token和refresh token的操作。这里refresh的设计上使用了队列+自动重试的机制,前端侧保证了多个请求同时失败,只会refresh一次(多次重试会导致比较早的refresh获得的token失效),并会自动重试所有失败的请求。
云帐号SDK基于PostMessage进行跨域通信,同时封装了PostMessageTunnel作为PostMessage的跨域方案,同时用于帐号及控制台的SDK;
云帐号基于storage(基于localStorage的本地数据管理)的方式管理登陆信息及国际化信息,同时通过监听localStorage的变更实现一个标签页状态改变,同时响应到所有已打开的标签页上;而这个通信机制更有效的用于基于用户控制台中的websocket实时消息通知,实现多个标签页只需要一个socket链接即可完成,大大减少了对后端的压力。
用户控制台
控制台主要提供了通用的基础信息如用户信息管理,消息管理,面板页面等,同时还为其他产品线(蜂巢,易盾,云信等)提供SDK,SDK里提供统一的导航等ui及用户信息,多语言信息等通用内容。
运营后台
运营后台主要基于react开发,是react+redux项目的良好实践。
运营后台集合了大量多种的功能,包含了文档管理、权限管理、群组管理、消息中心等一系列功能