前言
开始觉得需要写一些文章来分享一下一些技能点了。本来早就有这计划了,但一直没行动。最近途听一两个笑话(需要一点前后端实战经历才好理解),所以觉得分享、学习真的很重要。
这不是编的,是真实发生的场景:
后台开发的时候,有时需要记录或处理哪些字段信息更改过。一后台程序员告诉前端,“哪个字段内容改了你就将这个字段值改成-10传到我的接口里”;那么前端肯定要问了,“为啥要这样操作”;后台说“这样就能保证用户是通过页面调用的接口啊”......
这脑洞不是一般的大,简直就是黑洞啊。首先,这位后端开发者懒,居然这种数据对比想到的是让前台来做,现在众多的http接口测试工具(包括在线的)都能轻易的绕过前台界面直接调用接口,你这个-10就是“以卵击石”的卵,一戳就破;其次,前端传个-10就能说明是通过页面调用呢?看来前端“cookie”、"token",后端“session”、“token”、“缓存(内存、redis等)”都不如你页面这个参数强大了。殊不知你这个接口调用的安全考虑都是过多的了,卵都不如,直接破。
有一些后台程序员在扔给前台的接口里:
同一个接口同一个字段时而是字符串"张三",时而是对象 [{id:1, name:“张三”},{id:2, name:“李四”}],观点是“字段重复利用”,那么我觉得这位后台程序员在设计数据库的时候脑洞可以更大点,一张表(字段名“field1”、“field2”、“field3”、“field4”、“field5”......)就能开发整个系统了;数字(int)1,传个字符串(string)"1",观点是“前端对格式要求没这么高的”,可能他了解的javascript 或 vbscript是体育栏目上的“IT前端概要”吧,不要以为js中1==“1” 是true,就觉得它无所谓,严格运算符写法应该是1 === "1",“==”是只比较值而忽略类型的。
多吸收一些新的知识,不要束缚在自己的茧里