我现在在尝试做一个Web后台,目前做的一个功能是读取JSON文件,将里面的内容转换成SQL语句,然后去操作数据库。
做的时候我不禁想,服务器在JSON和SQL是不是仅仅充当了一个数据转换器的角色?除此之外没有其他作用了吗?
哦,我当然知道会有一些事务逻辑、请求响应之类的功能,我的意思是,具体到我的JSON文件和数据库之间,服务器除了内容的转换,还会做其他工作吗?如果是的话,那是不是说服务器在事务中主要是设计事务的逻辑,而具体的数据操作都是针对数据库去操作的?
Web服务器应该有很多,经常接触的Web服务器应该就API服务器和页面服务器,前者一般JSON格式的数据结果,前端再对数据进行处理,后者服务器返回的是HTML页面,也是就用模板语言进行页面渲染.
范围广一点,其实HTTP的MIMEtype里面这么多种数据类型都是给Web服务器设计的:/media/media_mimeref.asp其中JSON对应application/jsonHTML对应text/html
按楼主说的操作数据库,Node社区有CouchDB,服务器借口就是REST的HTTP接口..直接客户端访问数据库的话,服务器的意义不太大了.
复杂的情况也不少,比如服务端除了对数据的形态做各种转化以外,还要管理用户登录等等.还有很多..不过我是做前端的,例子举不出来了..具体服务器做什么,取决于平台的能力和需求,没有必要限制在数据API上.
web服务器,依照http协议(如果仅仅是web服务器的话),按照浏览器的请求把对应的资源输出回馈给浏览器。请求一个json文件,浏览器->web服务器->读取文件->输出->浏览器,服务器开放80端口(web服务器的默认端口),浏览器请求服务器请求的是80端口,80端口的请求被交给了web服务器去处理,浏览器依靠80端口与web服务器软件进行通信。
对于动态语言,浏览器请求web服务器,web服务器把请求交给后端的动态语言解析器操作,解析器把处理结果输出给web服务器,web服务器再交给浏览器。对于数据库的操作是在后端语言脚本中操作的,浏览器只是一座桥。