日期:2014-05-16 浏览次数:20527 次
自从进入WEB开发以来,一直在探寻更好的WEB前后端数据通讯接口
?
毫无疑问,这一切都将基于HTTP协议
?
我们已知标准的HTTP下前后端通讯是基于URI和参数完成的,对于URI,那只是暴露给客户端的地址,至于这个地址在SERVER端是如何实现,是否REWRITE了,前端不必关心,前端关心的就算参数的写法常见的不同的地址加上
?
?foo1=xxx&foo2=xxx
没问题,都是这么干的,万变不离其宗,问题在哪里呢?
SERVER端数据库设计和前端开发人员的代码参数格式上不统一
一个应用出来后,数据库的结构总是或多或少的要暴露给前端开发者或者最终用户的
对于前端开发者,暴露的部分就是开放的文档
对于最终用户,前端的一切都是暴露的
安全
最终
由SERVER端负责
那开放出来的这些接口,是基于什么的呢?
数据
如果用户角色允许看到某些数据,那么这些数据的定义就可以暴露出来
给前端开发者提供的文档也应该充分的描述这些数据(数据结构以及关系)
一直在探寻如何让前端开发者以数据库访问形式来写请求参数,以前我开发出的接口都不理想
MongoDB提供了类JSON格式的数据访问形式,这为请求参数提供了新的思路
MongoDB的JSON形式数据访问语法是完备的,文档(表),记录,查询很全面
把要暴露的数据结构给到前端开发人员,至于如何操作数据,是该查询还算更新,根据业务逻辑自己安排吧,如果提交的请求不被后端支持,那可能是违反了安全,数据安全或角色安全,如果分析后这些都没有违反,那就算后端没有开发好,但是前端的写法没错,后端抓紧开发吧,前端不用翻工了
这种,暴露数据结构,以完备JSON格式(MongoDB的发明)进行数据契约接口会大大减省开发中的沟通成本,各环节该干啥就干啥吧
而且JSON格式本来就是前端开发者应该具备的知识
这不是重复造轮子,是造了一个更好的轮子
?
哦,也许你想到了,这些好像都是动态数据,搜素引擎咋办?没啥问题,RSS,站点地图,静态页面,URL REWRITE and FOO,你有N种方法解决这些问题,让搜索引擎看的东西可不许要什么UI设计
其实我们真正需要解决的是WAP能渲染的静态
(看上去)
数据,解决了这个,搜索引擎自然没有问题了,SERVER端做个DOCTYPE动态的头,判断是否引入相应的JS和CSS,初次输出的HTML是兼容WAP的,既是表现也是数据,当然WEB浏览器的话就多了一些JS和CSS,在前端进行2次渲染
哦,这样好像需要对HTTP SERVER进行好多开发呀!那不算问题,CODER就是干这个的
因为我们知道
这是对的,是正确解决问题的途径,是发展的方向
这个,,,可以有