express中间件系统的基本实现

一直觉得 的中间件系统这种流式处理非常形象,就好像加工流水线一样,每个环节都在针对同一个产品的不同部分完成自己的工作,最后得到一个成品。今天就来实现一个简易的【中间件队列】。 一. API层 初始化方法 添加中间件函数的方法 启动中间件队列 二. 核心类的定义 js class MiddleWare ... »

使用 puppeteer 创建一个自动化导出 PDF 的服务

最近在基于 RAP2 做内网的一个 API 管理平台,涉及到与外部人员进行协议交换,需要提供 PDF 文档。 在设置完成 CSS 后已经可以使用浏览器的打印功能实现导出 PDF,但全手动,总是觉得不爽, 所以尝试使用了 PUPPETEER 实现 PDF 自动生成。 PUPPETEER 功能介绍 pu ... »

前端调试各种收集

前端调试 前言 当我第一次知道这种东西,我也惊呆了,居然还有这种操作,实在强大到没朋友,从此爱上调试,按时下班 无数次通过调试解决问题的经验告诉我,调试绝对是开发者最应该掌握的重要技能之一。调试能帮助我们定位问题解决问题,每解决一个问题,经验值就往上涨。后面就可以考经验解决很多问题,并且能正确避开当 ... »

如何手写一款KOA的中间件来实现断点续传

本文实现的断点续传只是我对断点续传的一个理解。其中有很多不完善的地方,仅仅是记录了一个我对断点续传一个实现过程。大家应该也会发现我用的都是一些H5的api,老得浏览器不会支持,以及我并未将跨域考虑入内,还有一些可能出现的一场等~巴啦啦。(怎么感觉这么多问题???笑~) 本文参考仓库: "点我" 这几 ... »

Nodejs入门(二)

这是我发布的有关Nodejs学习的第二篇博客,这篇主要介绍Nodejs一些常用的api,还有一些小栗子可以更直观的了解。 ... »

KOA的简易模板引擎实现方式

上上一期链接——也就是本文的基础, "参考KOA,5步手写一款粗糙的web框架" 上一期链接——有关Router的实现思路, "这份Koa的简易Router手敲指南请收下" 本文参考仓库: "点我" 上一期科普了Router,我们可以为每一张页面配置一个路由,但是我们不可能每个 都直接写 ,这样代码 ... »

这份Koa的简易Router手敲指南请收下

上一期链接——也就是本文的基础, "参考KOA,5步手写一款粗糙的web框架" 本文参考仓库: "点我" Router其实就是路径匹配,通过匹配路径,返回给用户相应的网站内容。 以下方例子为例,主要通过提取 中的 信息,来匹配当前路径,并给 赋值,返回相应的界面。这个过程不复杂,就是一个匹配路径的过 ... »

初始nodeJS

nodeJS是什么? 笔者的理解就是运行在后台的JavaScript; 这就得归功于V8引擎(V8是Google Chrome浏览器的JavaScript引擎),通过对高性能V8引擎的封装,并通过一系列优化的API类库,使其就能够在后端运行了。 node的特点: 1,基于事件驱动 2,无阻塞 从而n ... »

NodeJS实现同步的方法

NodeJS被打上了单线程、非阻塞、事件驱动…..等标签。 在单线程的情况下,是无法开启子线程的。经过了很久的研究,发现并没有thread函数!!!但是有时候,我们确实需要“多线程”处理事务。nodeJS有两个很基础的api:setTimeout和setInterval。这两个函数都能实现“异步”。 ... »

参考KOA,5步手写一款粗糙的web框架

我经常在网上看到类似于 的文章,大家都在讨论哪一个好,哪一个更好。作为小白,我真心看不出他两who更胜一筹。我只知道,我只会跟着官方文档的start做一个DEMO,然后我就会宣称我会用KOA或者express框架了。但是几个礼拜后,我就全忘了。web框架就相当于一个工具,要使用起来,那是分分钟的事。 ... »

通过HTTP的HEADER完成各种骚操作

作为一名专业的切图工程师,我从来不care网页的header,最多关心 是不是 。但是HEADER真的很重要啊,客户端从服务器端获取内容,首先就是通过HEADER进行各种沟通!HEADER可以帮助我们完成许多骚操作,提高网站的性能,用户的体验。好了让我们来feel一下。 初级骚操作 多语言( ) 防 ... »

【新手向】使用nodejs抓取百度贴吧内容

参考教程:https://github.com/alsotang/node-lessons 1~5节 1. 通过superagent抓取页面内容 OK 这样就获得了一份HTML代码。 因为获取HTML是异步的,所以我们封装一个函数,返回一个Promise。 2. 通过cheerio筛选页面数据 总不 ... »

【nodejs】让nodejs像后端mvc框架(asp.net mvc)一样处理请求--目录(8/8 完结)

为什么要做这个 在使用nodejs开发过程中,总是发现需要做很多重复性的体力劳动,且因为自身是服务端程序员出身,感觉有一些服务端好的东西其实可以在nodejs上得到应用并能提高一些开发工作效率。 本系列文章将介绍对express框架的一些扩展,来达到部分后台框架一样的特性功能。如自动路由,路由映射, ... »

koa源码阅读[0]

koa源码阅读[0] Node.js也是写了两三年的时间了,刚开始学习Node的时候,hello world就是创建一个HttpServer,后来在工作中也是经历过Express、Koa1.x、Koa2.x以及最近还在研究的结合着TypeScript的routing-controllers(驱动依然 ... »

Nodejs UDP实现

前言 UDP是User Datagram Potocol 的简称,它与熟知的TCP协议一样,UDP协议直接位于IP协议的顶层。 UDP适用于一次传输量小,对可靠性要求不高的环境;UDP协议为非连接的协议,没有建立连接的过程,所以它的通信效率极高,但也因此它的可靠性不如TCP。 dgram dgram ... »