跟安全相关的,尽量两边都要验证 /运算。比如说注册账户的用户名格式,密码错误尝试的次数,微信给红包看照片的照片源文件(本地化模糊),
两边验证可以减轻服务端压力,因为大部分在客户端都能完成,剩下的尝试破解的,或者别的漏网之鱼服务端也全都能捕获。
时间戳必须使用服务端的(比如发帖,发推,等等)
推荐你看看乌云的:
1. 密码找回逻辑漏洞大礼包:
http://drops.wooyun.org/web/50482. 网上支付逻辑漏洞大礼包:
http://drops.wooyun.org/papers/3453. 应用程序逻辑漏洞大礼包:
http://drops.wooyun.org/papers/14184. 业务安全逻辑漏洞大礼包:
http://drops.wooyun.org/web/6917跟以上相关的,统统服务端(二次?)验证(对于绕过客户端验证的请求要用日志记录好,便于以后分析)
还推荐你看这本 Security Engineering , 能提高安全方面逻辑判断的严谨性
http://www.cl.cam.ac.uk/~rja14/book.html(作者自己发布的 PDF)
大规模数据筛选分类----服务端 比如说从数据库找出永续感兴趣的信息
小规模数据筛选分类----客户端 比如把用户感兴趣的信息按照时间排序
至于运算,你就自己拿客户端试试,觉得会影响速度,用户体验什么的,就转移到服务端。
或者比如是免费的运算服务,给客户端。服务端给高级的付费用户。
解析指的是域名么?国内可能劫持的比较严重,腾讯自己给自己搞了一套私有解析协议貌似。