一.前言 随着前端业务的不断发展,页面交互逻辑的不断提高,让数据和界面实现分离渐渐被提了出来.JavaScript的MVC思想也流行了起来,在这种背景下,基于node.js的模板引擎也随之出现. 什么是模板引擎? 它用于解析动态数据和静态页面所生成的视图文件,将原本静态的数据变为动态,快速地实现页面交互:目前使用较广的模板引擎有以下几种:Jade / Pug.EJS.Handlebars. jade模板引擎 jade模板引擎相较于原来的html会显得更加简洁,它将标签原本的"<>&q…
一.简介 相比于jade模板引擎,ejs对原HTML语言就未作出结构上的改变,只不过在其交互数据方面做出了些许修改,相比于jade更加简单易用.因此其学习成本是很低的.您也可参考ejs官网:https://ejs.bootcss.com/ 二.ejs基本使用 这里我们使用如下配置文件: 我们啊可以通过下面的方式实现基本的ejs操作: app.js文件: const express=require("express"); const ejs=require("ejs"…
前言 ndoe.js,一个基于javsscript运行环境的服务器语言,它的出现使得javascript有能力去实现服务器操作.在gitHub上ndoe.js的star数已接近6万,可见其受欢迎程度:而基于node.js的Express则把原先的许多操作变的简单灵活,一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具.使用 Express 可以快速地搭建一个完整功能的网站.express官方网址:www.expressjs.com.cn Express的安装方式 Express…
一.简介 实际引用中,有些公司在不同地区会设置不同服务器,因此就需要用到nginx以实现负载均衡,这时,将session数据保存至数据库就成为了需要面对的问题,我们以MySQL数据库为例,看看他是如何将数据上传至mysql中的.在npm上有一个叫做:express-mysql-session的模块,主要用于将数据上传至mysql数据库,以下为他的实现方式: var express = require('express'); var app = module.exports = express()…
一.关于session session是另一种记录客户状态的机制,与cookie保存在客户端浏览器不同,session保存在服务器当中:当客户端访问服务器时,服务器会生成一个session对象,对象中保存的是key:value值,同时服务器会将key传回给客户端的cookie当中:当用户第二次访问服务器时,就会把cookie当中的key传回到服务器中,最后服务器会吧value值返回给客户端.因此上面的key则是全局唯一的标识,客户端和服务端依靠这个全局唯一的标识来访问会话信息数据. 二.设置se…
一.关于cookie加密 cookie加密是让客户端用户无法的值cookie明文信息,是数据安全的重要部分:一般的我们可以在保存cookie时对cookie信息进行加密,或者在res.cookie中对option对象的signed属性设置设置成true即可. 二.使用 signed 属性进行cookie加密 如下列代码: const express = require("express"); const cookieParser = require("cookie-parse…
一.关于Cookie 在我们关闭一个登录过的网址并重新打开它后,我们的登录信息依然没有丢失:当我们浏览了商品后历史记录里出现了我们点击过的商品:当我们推回到首页后,推荐商品也为我们选出了相似物品:事实上当我们有过此类操作后,浏览器会将我们的操作信息保存到cookie上面.阿进而言之,cookie就是储存在用户本地终端上的数据. Cookie的特点 1.cookie保存在浏览器本地,只要不过期关闭浏览器也会存在. 2.正常情况下cookie不加密,用户可轻松看到 3.用户可以删除或者禁用cooki…
一.中间件 从字面意思,我们可以了解到它大概就是做中间代理操作,事实也是如此:大多数情况下,中间件就是在做接收到请求和发送响应中间的一系列操作.事实上,express是一个路由和中间件的web框架,Express 应用程序基本上是一系列中间件函数的调用. 中间件函数可以执行以下任务:执行任何代码.对请求和响应对象进行更改.结束请求/响应循环.调用堆栈中的下一个中间件函数. 中间件也分为应用层中间件.路由中间件.内置中间件.错误处理中间件和第三方中间件.下面分别对以下进行说明: 1.应用层中间件…
一.关于POST请求 post方法作为http请求很重要的一部分,几乎所有的网站都有用到它,与get不同,post请求更像是在服务器上做修改操作,它一般用于数据资源的更新.相比于get请求,post所请求的数据会更加安全.上一章中我们发现get请求会在地址栏显示输入的用户名和密码(有中文时会转化为BASE64加密),而post请求则会将数据放入http包的包体中,这使得别人无法直接看到用户名和密码! 二.Express如何设置POST请求 1.我们的知道,首先我们得知道在form表单进行post…
一.关于get请求 一般在网站开发中,get都用作数据获取和查询,类似于数据库中的查询操作,当服务器解析前台资源后即传输相应内容:而查询字符串是在URL上进行的,形如: http://localhost:8080/login?goods1=0001&goods2=0002 有关 GET 请求的其他一些注释:GET 请求可被缓存GET 请求保留在浏览器历史记录中GET 请求可被收藏为书签GET 请求不应在处理敏感数据时使用GET 请求有长度限制GET 请求只应当用于取回数据 二.获取前台get请求…
一.Express路由简介 路由表示应用程序端点 (URI) 的定义以及响应客户端请求的方式.它包含一个请求方时(methods).路径(path)和路由匹配时的函数(callback); app.methods(path, callback); 二.Express路由方法 Express方法源于 HTTP 方法之一,附加到 express 类的实例.它可请求的方法包括: get.post.put.head.delete.options.trace.copy.lock.mkcol.move.pu…
MicroPython成功将Python引入到嵌入式领域,近几年MicroPython的发展和普及也证明,Python无疑将在未来几年内快速抢占和蚕食C/C++的份额.包括现在比较火爆的机器人.无人机以及其他开源硬件诸如Arduino与RaspberryPi的项目正吸引到众多拥有Python技能背景的爱好者. 截止到目前,已经有不少嵌入式硬件成功移植了Micropython,如STM32F4.esp8266.PYBoard等.而目前在MicroPython嵌入式领域最全.最专业的当属TPYBoa…
Java NIO系列教程(十一) Java NIO与IO 当学习了 Java NIO 和 IO 的 API 后,一个问题马上涌入脑海: 我应该何时使用 IO,何时使用 NIO 呢?在本文中,我会尽量清晰地解析 Java NIO 和 IO 的差异.它们的使用场景,以及它们如何影响您的代码设计. 下表总结了 Java NIO 和 IO 之间的主要差别,我会更详细地描述表中每部分的差异. IO NIO 面向流 面向缓冲 阻塞IO 非阻塞IO 无 选择器 一.面向流与面向缓冲 Java NIO 和 IO…
一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是“批量”,1个jQuery对象中可以封装多个原生对象.Express的核心就是中间件,Express说大真心不大,主要是因为他做的事儿大,而不是这个框架的功能多. 中文官网(实际上也是英语的):http://www.expressjs.com.cn/ 基于 Node.js 平台,快速.开放.极简的…
在express站点中使用ejs模板引擎 文/玄魂 目录 在express站点中使用ejs模板引擎 前言 1.1         安装 1.2修改app.js 1.3创建测试页面 前言 使用 vs创建的express站点,默认使用的是jade模板引擎,但是我不太喜欢这种方式,因为我觉得html本身的语义特性是我喜欢的,另外html本身也足够简洁,使用html自身做为模板语言更符合我的喜好,所以我选择ejs. 欢迎访问玄魂的博客 1.1        安装 在网站根目录启动控制台,输入 npm i…
1.如何在项目中安装ejs模板引擎 在NodeJS指南中利用利用以下命令建立网站的基本结构: express -t ejs microblog 运行这个命令后继续运行 cd microblog && npm install(安装项目的依赖属性), 发现安装的模板引擎是jade,而不是ejs.原因是现在的版本已经没有-t这个命令了,改为 express -e  microblog 运行完这个命令,继续运行cd microblog && npm install,ejs模板引擎就…
express官网 postman工具下载地址  multer的npm文档地址 express模板引擎怎么使用  地址:http://www.expressjs.com.cn/guide/using-template-engines.html EJS中文文档地址 首先建立一个server.js 之后npm init初始化一下 安装express npm install express --save 在server.js中写入 var express = require("express"…
let express = require('express'); let fs = require('fs'); let ejs = require('ejs'); let app = express(); let http = require('http'); app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header(&qu…
ejs官方文档:https://ejs.bootcss.com/ 1.什么是 EJS? "E" 代表 "effective",即[高效]. EJS 是一套简单的模板语言,帮你利用普通的 JavaScript 代码生成 HTML 页面. EJS 没有如何组织内容的教条:也没有再造一套迭代和控制流语法:有的只是普通的 JavaScript 代码而已. 2.EJS特性: 快速编译与绘制输出 简洁的模板标签:<% %> 自定义分割符(例如:用 <? ?&g…
1.app.js /** * ejs 模板引擎的使用: * 1.npm install koa-views --save * 2.npm install ejs --save * 3.var views = require('koa-views'); * app.use(views(__dirname, { extension: 'ejs' })) * 4.await ctx.render('index') * * 注意:我们需要在每一个路由的render里面都要渲染一个公共的数据 * 公共的数…
首先在项目文件下使用cmd,输入:npm install --save koa-views ejs,将koa-views中间件和ejs模板引擎安装到文件中,并自动写入依赖 接在在index.js文件中插入以下代码 const koa = require('koa'); const router = require('koa-router')(); const views = require('koa-views'); var app = new koa(); // views('放置引擎的绝对路…
前言: 最近在开发一个关于后台管理系统的基础开发平台,解释一下就是不管什么管理系统都有一些相同的功能,但是又有一些细节不一样,这个基础平台就是实现对于基础功能可以进行快速开发,主要有自定义的生成功能代码块,只需要选择一些配置项就能够生成我们需要的页面,主要就是通过nodejs和ejs模板引擎完成这个功能. 正文: 其实实现起来也很简单: 首先就是我们先要搭建需要生成的页面模板,然后通过传递参数来实现生成不同的需求页面,下面贴一些主要的代码:(这里是生成的vue文件,其实不管是html vue文件…
一. Swiper swiper是一个应用于移动端的动画插件,原理类似于轮播图 官网 http://www.swiper.com.cn/# html结构 <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide">Slide 1</div> <div class="swip…
swig模板引擎的基本用法: 1. 变量 {{ name }}  //name名前后必须要加空格,不加就会报错 2. 属性 {{ student.name }} 3. 模板继承 swig使用extends和block来实现模板继承 首先定义一个模板 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{% block t…
小场景小知识点. 在使用express过程中,按照官网教程,利用express生成器很容易初始化express项目模板. 那么初始化项目之后应该如何使用ejs作为模板引擎呢?如下 // 注释掉默认生成配置 // view engine setup // app.set('views', path.join(__dirname, 'views')); // app.set('view engine', 'jade'); app.set('views',path.join(__dirname , '…
简介 在上一篇博客:数据挖掘入门系列教程(十点五)之DNN介绍及公式推导中,详细的介绍了DNN,并对其进行了公式推导.本来这篇博客是准备直接介绍CNN的,但是想了一下,觉得还是使用keras构建一个DNN网络,然后进行一定的分类操作,这样能够更加的直观一点. 在这篇博客中将介绍: keras的基本使用 使用keras构建DNN对MNIST数据集进行预测 使用前准备 这次我们将使用keras库去构建神经网络,然后默认使用tensorflow作为后端,我是用的python库版本如下: keras:v…
本人10月份提出离职,可是交接非常慢,预计年底才会交接完,趁着交接之际,自学了一下WPF,由于这是微软未来的发展趋势,自WIN7以来包含前不久公布的WIN8,核心还是WPF,在此,将自己的学习成果做一个总结,同一时候将自己学习积累的东西和广大博友分享,希望大家能共同进步.在文章的结尾我会将全系列的源码地址提供给大家,有须要的朋友能够下载下来自己研究研究.由于之前申请WPF博客专栏一直没有申请下来,所以用一篇文章来结束我的学习,同一时候也给初学的人提供一个学习文件夹,提高学习效率,废话不多说,直接…
因为原书作者的一再要求,在此声明,本书中的部分内容引用了原书名为<深入浅出WPF>的部分内容,假设博文不能满足你现有的学习须要,能够购买正版图书! 本人10月份提出离职,可是交接非常慢,预计年底才会交接完,趁着交接之际,自学了一下WPF,由于这是微软未来的发展趋势,自WIN7以来包含前不久公布的WIN8,核心还是WPF,在此,将自己的学习成果做一个总结,同一时候将自己学习积累的东西和广大博友分享,希望大家能共同进步.在文章的结尾我会将全系列的源码地址提供给大家,有须要的朋友能够下载下来自己研究…
1.在 app.js 中通过以下两个语句设置了 引擎类型 和页面模板的位置: app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); 2.调用模板引擎 res.render('index', { title: 'Express' }); res.render 的功能是调用模板引擎,并将其产生的页面直接返回给客户端.它接受两个参数,第一个是模板的名称,即 views 目录下的模板文件名,不包含文件的扩展名:第二个…
一.Node.js简介 1.Node.js是什么? Node.js 可以作为服务器向用户提供服务,与 PHP.Python.Ruby on Rails 相比,它跳过了 Apache.Nginx 等 HTTP 服务器,直接面向前端开发.Node.js 是一个让 JavaScript 运行在浏览器之外的平台.PS: Node.js 不运行在浏览器中,所以也就不存 在 JavaScript 的浏览器兼容性问题. 2.Node.js可以做什么? Node.js 能做的远不止开发一个网 站那么简单,使用…