插个中间层就完了。
我不认为前端这思路没问题,就算考虑到传输和延迟,你要知道一次请求返回大量重复的信息只会带来更多的流量、延迟和浪费。更别说重复返回各种数据了,能有QL给前端自己按需查询是最好,没有的情况下,拆分细一点儿这思路是没错的。
就拿登陆返回用户详细信息来说,如果要带着profile一起返回,payload自然就变大了,下次查询profile又会反复提供重复的数据(还带来一致性问题)。很多时候登陆的动作就是个authentication,真不一定能用到什么profile。响应慢的时候先显示个登陆成功正在跳转比转着菊花加载用不到的profile体验要好,毕竟用户可以先知道我密码没输错。
好比我开个银行,免费给你存钱,结果你2秒钟存进去的钱,我告诉你要取钱你得在我这站两星期。你怒不怒?品一品。
其实解决这个方法简单,把上传也限速即可。然而百度是即想要你上传的文件,又不想让你痛快下载,就形成了现在的上传一瞬间,下载一辈子的情况。
哪怕是个免费的服务,如果你上传只要一瞬间的东西下载要花几天一星期才能下来,你都会觉得它在抢劫。
我个人觉得限速是可以接受的,然而网盘这东西跟视频不同,里面的内容是用户免费提供的,你至少要能够提供不低于上传的下载速度,否则这不就是抢劫么,你的就是我的,我的还是我的?