全新ASP框架——IISNODE介绍

  Asp是一门经典的动态网页编程语言,通常使用vbscript或者Jscript脚本来实现。一个好的框架,可以帮助您更加快速地使用Asp来完成您的网站开发任务。而Asp框架的终结者——IISNODE框架,无疑就是这样一款产品。

  作者:沈赟杰

  官网:http://api.webkits.cn/

  交流:431804354(QQ群)

一、框架简介

  IISNODE是一套有着完善机制的Asp(非Asp.NET)框架,并且使用了完美兼容nodejs的模块加载方式,易于扩充增加自己的模块。整个框架采用Asp下的Jscript编写,可以直接运行于普通的Asp虚拟主机上。

  • 整个框架完全使用JScript实现,彻底摒弃了VBScript:使用与JavaScript语法相同的JScript,真正实现了前后端开发语言统一,降低开发学习成本;
  • 实现了完全遵循CommonJS规范的ASP界的require,这样很多遵循CommonJS规范的不涉及DOM操作的JavaScript类库便可以直接拿来使用了,大大地丰富了ASP开发资源;
  • 除了require,我们也实现了很多与nodejs接口完全相同的核心组件,如文件操作模块fs、路径操作模块path等,同时,我们还扩充了很多es5的方法,基于这三点,我们高度实现了与node的兼容,很多node的模块无需任何修改,直接可用;
  • 扩充简单:模块的扩充使用的是全世界通用的CommonJS规范,机制非常健全;
  • 开发了仿node命令行的spm工具,spm是为了更方便的模块开发而生的,使用spm可以方便地安装、开发、调试、提交模块,同时,还有很多基于spm的扩展模块:如js文件压缩、js文件格式化(反压缩)、依赖模块打包合并等;
  • 基于jszip在全世界范围内首次实现了ASP上的无组件zip文件压缩和解压缩,该功能可以在普通的虚拟主机上运行,这是很多ASP程序员梦寐以求的功能;
  • 实现了运行在服务端的Ajax请求服务,使用与jQuery相同的ajax接口,在服务端发送ajax请求;
  • ......

二、框架核心

  因为Asp中使用的Jscript遵循的是ECMAScript V3规范,为了更好的兼容性,我们在框架中引入了几个JS库。

  ECMAScript:兼容ES5和ES6规范的JS库。

  Underscore:集成大量JS常用方法,减少开发时代码书写的工作量。

  JSON:更加方便的处理json数据,这样我们可以直接require一个json文件作为配置文件。

  Date:扩展日期处理功能。

三、系统模块

  event:事件模块,用来对过程进行事件处理。事件处理作为业务过程的HOOK,有它本质上的优势。我们可以通过挂钩这些事件,在过程处理时候自动触发回调,让程序的扩展性更强。

  Promise:我们引入了Promise来处理任务机制。

  Process:全局系统类库,用于存放系统信息以及系统事件。process模块用来与当前进程互动,可以通过全局变量process访问,不必使用require命令加载。它是一个Event对象的实例。

  path:本模块包含一套用于处理和转换文件路径的工具集。几乎所有的方法仅对字符串进行转换, 文件系统是不会检查路径是否真实有效的。

  fs:基于fso的文件操作模块,具有与nodejs的fs模块几乎相同的接口,不支持异步处理。

  require:本框架的核心方法,也是最重要的原型方法。require 把一个基于本文件模块下的PatherSelector路径选择器转化为绝对地址后获取该地址所在的文件模块后编译,返回该模块的exports接口。

  Request:Express的输入流对象,包含了所有输入数据。可以使用中间件或者自定义中间件对其扩展。

  Response:输出模块,继承自console。所以console中所有方法属性,它都可以使用。

四、SPM功能

  Series Package Manager简称spm,它是一套IIS NODE的辅助开发工具,主要用户开发者的插件在线下载安装,插件提交和本地调试。它能很方便地将用户编写的模块在SPM中调试过程,并且省去了新建路由调试的麻烦,同时,SPM也支持自定UI表现,使你的CMD命令执行过程动态化。只要你精通前端,那么你将很容易建立你自己的命令过程,这对开发者和用户有很大的吸引力。

有了SPM,模块开发与调试变得更加方便,实现真正的快速开发。

五、扩展模块

  IISNODE兼容大部分的nodejs模块,至少50%以上的nodejs模块可以无需任何修改就直接运行于IISNODE框架之上,大大丰富了IISNODE的资源。目前我们已经选择了几十个模块集成到IISNODE框架中。

  ajax:运行在服务端的Ajax请求服务,类似jquery的接口。

  ejs:Embedded JavaScript templates。

  express:IIS Node 核心运行框架,用于网站搭建和服务。基本兼容NODEJS的express框架。

  mssql:SQL SERVER 数据库支持框架。集成了数据库连接,DBO操作,存储过程。

  access:Access 数据库操作组件,支持Access中间件,调用方便,兼容MSSQL组件调用方式。

  sql-bricks:SQL语句生成器,以更便捷的方式来进行数据库操作。

  compressor:将入口模块依赖的所有模块都打包成一个文件,减少FSO操作次数,提高效率。

  xml:XML操作类,类似jquery的选择器。

  zip:无需开启特殊权限,可以直接运行于普通虚拟主机上的ASP ZIP压缩解压程序。

  upfile:ASP无组件上传模块,目前世界上唯一一个已公布的纯JScript实现的ASP文件上传处理模块。

  debris:远程断点续传模块,实现了离线下载功能。模块体现实时进度下载和分块下载。

  crypto-js:Modularized port of googlecode project crypto-js。

  uglify-js:JavaScript parser and compressor/beautifier toolkit。

  debug:一个SPM控制台调试组件,用这个组件能很方便地调试到系统的变量以及错误地方。

  js-beautify:Reformat and reindent bookmarklets, ugly JavaScript, html and CSS。

  qr-encode:无组件二维码生成,支持中文,支持保存图片成文件,支持Adodb.Stream输出。

  captcha-png:简单的验证码生成,无组件生成png验证码图片。

时间: 2024-10-08 23:49:36

全新ASP框架——IISNODE介绍的相关文章

asp.net_01 简单介绍

1.静态网页和动态网页 刚开始一直概念很模糊,分不清,今天晚上看视频,查资料终于弄明白点儿了.静态网页和动态网页的区别可以说是使用语言的区别. 静态网页:使用语言—html,不包含服务器运行代码;没有数据库,数据量大时,制作和维护困难:访问速度快:内容稳定,容易被搜索引擎检索:不含程序,不可交互,适合更新较少的展示型网站. 动态网页:使用语言--以超文本标记语言(html)为主,结合其他服务器端语言:有数据库,方便维护:访问速度慢:不容易被搜索引擎检索:交互性强.动态网页首先获得用户的指令,然后

关于jsp商城开发中一些常用框架的介绍

Struts跟Tomcat.Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使java商城产品以及jsp商城开发者能更深入的了解其内部实现机制.除此之外,在 java商城开发 中Struts的优点主要集中体现在两个方面:Taglib和页面导航.Taglib是Struts的标记库,比较灵活,能大大提高开发效率.另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点.struts历经6年多的发展,是目前用户数最

上课笔记_Ajax框架,DWR介绍,应用,例子

使用Ajax框架 1. 简化JavaScript的开发难度 2. 解决浏览器的兼容性问题 3. 简化开发流程 常用Ajax框架 Prototype 一个纯粹的JavaScript函数库,对Ajax提供良好支持 jQuery 1.非常优秀的JavaScript库,对Ajax提供了良好的支持 2.与Prototype设计思想不同的是在使用jQuery之后,开发者操作的不再是DOM对象而是jQuery对象 DWR 1.        非常专业的Java Ajax框架 2.        通过DWR框架

Django - Django框架 简单介绍

Django框架 简单介绍 本文地址: http://blog.csdn.net/caroline_wendy/article/details/29172271 1. 介绍 Django是一个开放源码的Web应用框架, 由Python写成. 採用了MVC的软件设计模式, 即模型M, 视图V和控制器C. 它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的站点的, 并于2005年7月在BSD许可证下公布. 这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的.

家庭洗车APP --- Androidclient开展 之 网络框架包介绍(一)

家庭洗车APP --- Android客户端开发 之 网络框架包介绍(一) 上篇文章中给大家简单介绍了一些业务.上门洗车APP --- Android客户端开发 前言及业务简单介绍,本篇文章给大家介绍下网络框架.之前也了解过一些开源网络通讯架构.也大概看了一部分源代码.比方Afinal.Volley.AndBase.Android-async-http等,感觉各自都有各自的优劣,自己也曾封装过一些简单的网络架构,感觉有非常多地方须要注意和优化.这里就不贴出来献丑了,感兴趣的朋友能够去查阅学习上面

webUI自动化测试框架---”pyswat“介绍

webUI自动化测试框架---"pyswat"介绍 大家好我是lamecho 辣么丑,今天给大家介绍一款web自动化测试框架pyswat.  "pyswat"是一个做web页面自动化测试的框架(python-selenium-web-auto-test缩写).基于python,利用hook技术及对selenium封装,做到完全录制案例(操作步骤)不需要手写脚本,很方便有木有!:lol 举个栗子,做网站登录操作在python中你要这样写一大堆脚本 而通过pyswat的

Asp.Net IHttpHandler介绍

Asp.Net IHttpHandler介绍 ASP.NET响应Http请求时常用的两个处理接口是IHttpHandler和IHttpModule. 一般的,IHttpHandler用来处理一类特定的请求,比如对每个*.asp, *.aspx文件的分别处理.而IHttpModule通常用来处理所以请求共同需要的操作,比如对所以请求页面进行某些相同的检查功能. 我们先来看一下IIS服务器在相应Http请求时的处理步骤. ASP.NET中有管线(Pipeline)这个概念,意指每个ASP.NET请求

开源实体映射框架EmitMapper介绍

开源实体映射框架EmitMapper介绍 综述 EmitMapper是一个开源实体映射框架,地址:http://emitmapper.codeplex.com/. EmitMapper映射效率比较高,接近硬编码.EmitMapper采用emit方式在运行时动态生成IL,而其他映射框架多是采用反射机制.此外EmitMapper最大限度地减少了拆箱装箱操作和映射过程中的额外的调用. EmitMapper支持.net的所有平台:Framework 3.5.Microsoft Silverlight 3

.NET平台开源项目速览(13)机器学习组件Accord.NET框架功能介绍

Accord.NET Framework是在AForge.NET项目的基础上封装和进一步开发而来.因为AForge.NET更注重与一些底层和广度,而Accord.NET Framework更注重与机器学习算法以及提供计算机视频.音频.信号处理以及统计应用相关的解决方案.该项目使用C#语言编写,项目主页:http://accord-framework.net/ 说明:该文章只是一个基本介绍,主要内容是翻译的官方文档和介绍,部分英文表述个人能力有限,不太熟悉,所以直接照搬原文,有比较确切的知道中文名