如题。
最近的几个项目涉及到手机端和网站共用后台的问题,在整个结构方面思考良久不得解。
请各位大虾来点建议。
其实我也比较倾向于使用Ajax+Handler的做法,这种写法和目前使用的knockoutjs等js框架契合度比较高。
那么,Ajax+Handler的这种结构有什么缺点呢?或者说有什么要注意的呢?
----------------------------------------------------------------------------
目前发现的问题,无法访问Session内容,虽然现在基本很少用Session了,但有的旧框架还有Session相关的东西。
然后是,身份认证的问题,其实应该和Session类似的,使用Ajax没法判断独立的会话,所有请求都得附带身份信息。这可能不太安全吧?
1、ajax和一般处理程序 效率高就不用多说了,没走页面生命周期,当然也就没有页面缓存等福利了
2、如果html页面的逻辑稍微复杂点,就需要多个handler来执行,handler的职责还是单一比较好,当然在ProcessRequest方法也可以通过判断处理很多请求
3、aspx页面Page 继承 TemplateControl, IHttpHandler
一般处理程序Handler1 继承 IHttpHandler
aspx比handler的功能多,handler要aspx执行的快,最终选择谁,感觉还是配合使用比较好,扬长补短
我觉得不是低,反而是高
dudu君,这种写法有神马要注意的啊?
@飞扬的尘埃:
如果有可能,我建议用MVC
@dudu: 这就是现实问题了。我倒是蛮想推翻旧框架,用MVC重新搞一套,无奈上面通不过,下面人手还现学啊。现有的业务大多还涉及到移动终端,我就想,既然到时候做移动终端时,要开发一套handler或者webservice,那为何不直接就以ajax作为主要的数据交互方式好了,PC端的web就当作是移动终端的web来做。只是还缺少点经验,我可不想做到一半遇到超难解决的问题,那就杯具了。
@飞扬的尘埃: 在现有项目中可以直接增加MVC的使用,不会造成影响。用Handler也没什么问题,只是要多写一些代码。
同意@dudu,因为不用执行完整的生命周期。
Ajax在用户体验上具有无可非议的重要性,至于效率我同意楼上说的,因为不用执行完整的页面生命周期,所以相对于传统提交方式,肯定是会有提高的
Ajax+Handler这种方式,如果没有易用的框架的话。开发效率比较低
@朝曦:嗯,谢谢。我们项目有一些自己的js库,目前用着还算方便。
你都这么用了,那还是MVC吧,选择最合适的技术才不纠结。老写ashx之类的也是问题,MVC做这种事情就显得高端,大气,上档次了。
团队技术转型是个问题啊,不是我一个人的问题呢。