Simple is Happiness
Less is more
OnceIO(Node.JS)的静态文件路由(app.static)
by newghost keys OnceIO Node.JS 1478162635403

为了提供静态资源,比如图像、CSS 文件和 JavaScript 文件等,可以将这些资源放在专门的文件夹中,然后用 app.static('folder') 将文件夹设置为 static 模式,使其中的资源可以直接被提供,而不参与中间件、Handler、会话、POST 和 Cookie,以达到节约带宽、减少延迟和降低服务器压力的目的。示例代码如下:

app.static('css')
OnceIO(Node.JS)的路由(Routing)、路由方法和路由变量
by newghost keys OnceIO Node.JS 1478058875870

路由用于确定应用程序如何响应对特定端点的客户机请求,包含一个 URI(或路径)和一个特定的 HTTP 请求方法(GET、POST 等)。

每个路由可以具有一个或多个处理程序函数,这些函数在路由匹配时执行。

路由定义采用以下结构:

app.METHOD(PATH, HANDLER)
Node.JS的表单提交及OnceIO中接受GET/POST数据的三种方法
by newghost keys Node.JS OnceIO 1477920439145

在互联网上, QueryString是地址的一部分, 其中包含着需要传给后台的数据,通常以?开始,以&号分割。在表单提交时,会默认以QueryString的形式向后台发送数据,OnceIO会将其存储在res.query对象上。

OnceIO(Node.JS)中安装、使用和更换doT、EJS、pug等模板引擎
by newghost keys Node.JS OnceIO 模板引擎 1477534323521

由于 doT.js 模板引擎的整体性能较优,OnceIO 采用 doT.js 作为默认模板引擎。在使用任何一种除了 doT.js 之外的模板引擎之前都需要先用 cmd 在项目文件夹安装这种模板引擎。以使用 Git Bash 安装 EJS 为例,使用的命令是:

$ npm install ejs  
NodeJS中的Middleware是什么?在OnceIO中创建和使用中间件
by newghost keys OnceIO Node.JS 1477095536747

OnceIO 是一个自身功能极简,完全由路由、中间件和Handler构成的 web 开发框架:一个 OnceIO 应用本质上就是在调用各种中间件和Handler。  

中间件是一个函数,它可以访问请求对象(request object (req)), 响应对象(response object (res)),并将应用的请求-响应循环传向下一个中间件。

一个应用的请求-响应循环如下图所示,由请求对象、响应对象、中间件和 handler 构成。

OnceIO(Node.JS)服务器端Cookie设置、添加、删除、显示及其实现原理
by newghost keys OnceIO Node.JS 1479562162288

HTTP 是一种无状态的协议,服务器单从网络连接上无从知道客户身份,这给交互式 Web 应用程序的实现带来了阻碍。Cookie 就是用来绕开 HTTP 的无状态性的手段之一。Cookie 实际上是一小段的文本信息。客户端(浏览器)向服务器发送请求,如果 服务器需要记录该用户状态,就会将 Cookie 放在响应头中向客户端浏览器发送。如果浏览器启用了 Cookie,就会把 Cookie 保存起来,并且在再次请求该网站时把请求的网址连同 Cookie 一同提交给服务器。服务器通过读取 Cookie 来辨认用户状态。服务器还可以根据需要修改 Cookie 的内容。

NodeJS教程:基于OnceIO框架实现文件上传和验证
by newghost keys OnceIO Node.JS 1480420866766

before函数提供了一种机制,可以在文件接收之前根据req.headers对文件进行验证(如大小、类型),return true 表示验证通并开始接收文件。在这里 before 中的回调函数会根据 req.headers 中的 content-length 判断上传的文件是否超出了尺寸限制(开发人员可以通过修改 if 语句中的常数改变文件上传尺寸上限,content-length 单位为 byte,1024 * 1024 即代表 1 MB),如果超出了,文件不会被上传,服务器返回错误信息;如果没有超出,函数返回值为 true,服务器继续执行 app.file 中的回调函数,将文件从临时地址转移到指定存储地址,文件上传到这里就完成了。  

OnceIO(Node.JS)模块开发:模块注册、模块路由、静态文件重定向以及如何开发与设计一个功能扩展模块
by newghost keys OnceIO OnceDoc Node.JS 1482651803957

OnceIOOnceDoc企业网盘的底层Web框架。可以对Web应用进行分布式模块化存储,并基于模块路由对http请求进行重定向。这样模块的前端、后端和数据库定义就可以集中存储在一个扩展包里,每一个扩展包都是一个功能独立的应用,只需通过添加/删除文件夹的方式就可实现功能删减,从而实现功能模块的自由组装。正是因为OnceIO的这种模块化机制,才可以让OnceDoc有能力扩展成邮箱、流程管理、分享社区、资产管理、商城等系统。这篇文章主要介绍如何开发一个简单的OnceIO模块,以及资源文件的模块路由规则。

OnceDoc网页版邀请您内测试用
by newghost keys OnceDoc 1475917686558

我们对OnceDoc网页版进行了更新。OnceDoc网页版现具有文档管理、知识管理、流程管理、邮件系统、云端开发、书签收藏、微信办公等多种功能。我们诚恳地邀请您体验试用。

如果您在使用OnceDoc时遇到问题,或者对我们有任何意见建议,欢迎直接回复此邮件。 OnceDoc将用心倾听您的建议。

在OnceDoc(NODE.JS)环境下使用HTML和OnceDB(redis)构造表单并存储用户提交的信息
by newghost keys OnceDB Node.JS OnceDoc 1476364037723

OnceDB是OnceDoc企业内容(网盘)管理系统的底层数据存储机制。它将Redis扩展增强成为一个分布式模式定义内存数据库,它将Redis从一个简单的健/值存储数据库,增强为支持索引和关系查询的模式(schema)数据库。在OnceDB中,数据模式将由具体应用而不是数据库来决定。通过OnceDB您可以自由动态定义数据库模式,或者在扩展模块中修改或扩展展已有的数据库存储模式。OnceDB即拥有内存数据库的强大性能,同时又具备强大的定制和扩展能力。

关注
扫一扫即可关注我们:
OnceDoc - OnceOA旺司企业管理私有云

ourjs官方微信号