发明名称 一种跨代码语言的开发框架
摘要 本发明公开了一种跨代码语言的开发框架,它涉及互联网技术开发技术领域,它采用开源jquery插件实现页面异步刷新能力,使页面只刷新要展示的内容,页面form表单将自动绑定jquery插件的ajaxForm函数,提交表单时,自动采用异步方式提交;后端通过nginx服务器配置根据请求url的后缀来识别开发语言从而分发到对应的服务器去处理,后将结果原路返回到界面。它适用于不同开发风格的程序员,对程序员技术门槛要求低,不需要合并代码,功能模块开发完成只需要在框架上配置功能模块运行路径即可。
申请公布号 CN105760181A 申请公布日期 2016.07.13
申请号 CN201610214954.1 申请日期 2016.04.07
申请人 深圳市百米生活股份有限公司 发明人 李敬塔;伍仲文;陈建良
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 代理人
主权项 一种跨代码语言的开发框架,其特征在于:它采用开源jquery插件实现页面异步刷新能力,使页面只刷新要展示的内容,页面form表单将自动绑定jquery插件的ajaxForm函数,提交表单时,自动采用异步方式提交;后端通过nginx服务器配置根据请求url的后缀来识别开发语言从而分发到对应的服务器去处理,后将结果原路返回到界面,具体步骤如下:1.采用开源jquery插件实现页面异步刷新能力,用户点击页面链接,框架自动向服务器端发起ajax请求,返回内容后将返回的内容填充到显示的区域;2.页面form表单通过onsubmit属性绑定自定义封装函数ajaxPost再由ajaxPost自动封装好form表单中的参数后调用jquery插件的ajaxForm函数,来实现异步提交功能,如:onsubmit="mm.ajaxPost({formId:this},mm.check);";3.页面删除操作则绑定自定义封装函数ajaxDelete,后续由ajaxDelete函数内部处理提交及提示工作;4.页面加载完成后所有的a链接,将自动绑定hashchange事件,绑定所有不在新窗口打开的a链接,当链接的href属性和hash值一样时触发hashchange事件,以确保所有的链接请求都将以ajax的形式发送请求,请求成功则将更新到指定区域显示,失败tip提示失败信息;5.为支持地址栏直接输入地址(或点击浏览器刷新)框架也能执行异步刷新(AJAX)动作,页面第一次加载时,地址栏url自动在功能模块前加“#”号,用以区分功能模块(如:xxx.100msh.com/#adstat/index?a=1&b=2,其中“#”号后adstat/index为功能模块路径,a和b为参数,没有参数则“?”后的部分省略);6.安装项目中需要用到的开发语言解析容器(如:tomcat/uwsgi/php‑fpm//IIS…),后续也可以随之扩展增加;7.后端服务器采用nginx来识别开发语言,nginx根据url相对应的开发语言分发到对应用服务容器处理,开发语言识别分为两种,一种通过url后缀(如:.jsp|.jspx|.do|.wsdl|.php|.net|.py|.pyc|.pyw|.pyo.|.pyd…)另外一种通过特定模块名称(如:xxx.100msh.com/py/、xxx.100msh.com/java/、xxx.100msh/cgi/、xxx.100msh/net/…);8.框架提供统计的权限控制接口,各语言开发模块统一调用框架的权限接口,来控制操作权限,具体处理流程如下:1)、在数据库表t_accessrights中增加字段access_type【1、php开发2、其他语言开发】,如果为2,access_link需要设置为完整的地址,例如:xxx.100msh.com/[java|python]/;2)、系统根据access_type的值建立相应的菜单项url+值为1:保持跟现有一致值为2:生成规则为:xxx.100msh.com/[java|python]/?p=xxx其中p的值为:access_id与access_token[在t_adm_access_token表中]加密处理后的值;3)、其他语言处理方式代码头部增加鉴权判断,如:访问xxx.100msh.com/[java|python]/?p=xxx时,根据p的值进行鉴权,鉴权接口为:http://[auth].cgi?p=xxx,返回结果为:返回true:表示鉴权成功,可以正常访问这个功能返回false:表示鉴权失败,提示没有访问权限;4)、鉴权接口说明:接口对收到的p参数,进行解密,解析出access_id与access_token,根据这两个参数鉴权算法如下:(1)根据access_token找出当前登录的user_id[在t_adm_access_token表中](2)根据user_id找出该用户有哪些职位pos_id[在t_adm_pos表中](3)判断职位pos_id是否有access_id权限[在t_posaccess表中],如果有:鉴权成功,否则鉴权失败;9.模块开发完成后,配置好运行环境,只需要在框架功能权限菜单上增加功能项链接,即可使用新模块功能;10.当用户登录超时(如:用户登录后走开了,未退出系统,过了超时间后,再回来操作),框架会自动识别并跳出操作界面,回到登录界面提示用户登录。
地址 518000 广东省深圳市福田区深南路与泰然九路交汇处英龙展业大厦2601