
Node.js
文章平均质量分 52
写express和koa的时候遇到的一些问题
当白
大人不华,君子务实
展开
-
【com】require和import,动态和静态
一、require和import的区别require用于读取并执行js文件, 并返回该模块的exports对象, 若无指定模块, 会报错。CommonJS规范加载模块是同步且动态的, 只有加载完成, 才能执行后续操作。可以在代码中引入import用于引入外部模块, 其他脚本等的函数, 对象或者基本类型。import属于ES6的命令, 它和require不一样, 它会生成外部模块的引用而不是加载模块,等到真正使用到该模块的时候才会去加载模块中的值。二、动态引入和静态引入webpack支持node的c原创 2021-05-12 17:51:21 · 2249 阅读 · 2 评论 -
【node】koa2.x 微信公众平台开发框架
QCWcop用koa2.x进行微信公众平台开发,写了一整套开发框架use:使用方法很简单:1.根目录下的config.js中填写你公众平台里边获取的appId、appSecret和token2.加载三方包npm i3.一个云服务器,具体的配置在我的优快云博客里有:阿里云配置desc:主要模块介绍:1.access_token_management负责管理access_t...原创 2019-11-20 09:52:39 · 265 阅读 · 0 评论 -
【node】线程池的封装和使用
主要用到worker_threads(1)以下是线程池的封装,可以直接拿来用const path = require('path');const { Worker } = require('worker_threads');class WorkerPool { //构造函数 constructor(workerPath, numOfThreads) { ...原创 2019-11-12 10:54:26 · 1065 阅读 · 0 评论 -
【node】阿里云node环境的搭建以及安全组的配置
Pre:阿里云服务器 centOS7.7 64位一、基础安装1.装下gityum install git2.装下nodejs,装完node,npm也就有了yum install nodejs3.如果没有yum install npm4.查看node的版本,发现有点低node -v5.安装node版本管理器npm i n -g6...原创 2019-10-30 16:06:05 · 454 阅读 · 0 评论 -
【node】egg.js
其中最重要的一块儿是app里边的内容:controller :里边是egg封装好的控制器extend : 过滤器我们放在这里,类似于vue里边的过滤器middleware:放一些中间件,应用里的中间件需要在config.defailt.js中注册一下public :静态文件service : db层,主要是为控制...原创 2019-10-28 16:02:57 · 274 阅读 · 0 评论 -
【node】多线程之worker_threads
Pre:单线程可以理解为一个程序端口,只有一个main函数顺序执行,不需要同时执行其他main函数,js语言不支持多线程异步io是因为有直接存储器dma,dma操作的时候并不完全依赖cpu,很多io操作都交给了dma来完成但是这就会有一个问题:有些时候cpu没有事情做闲着,等待返回数据,有些时候因为有计算工作,一直很忙卡到那了,没空处理返回数据,cpu利用率不高。这时候就需...原创 2019-10-19 22:31:20 · 2082 阅读 · 0 评论 -
【node】koa2.x project
在express4.x和koa2.x使用的基础上自己封装了一套koa2.x的使用框架报错,日志,本地日志输出、session-redis、路由、热更新等等,都有具体封装然后入口就相对很简洁:const Koa = require('koa');const app = new Koa();const config = require('./config');//配置文件...原创 2019-10-16 09:35:28 · 212 阅读 · 0 评论 -
【node】Koa2.x demos
之前一直用express4.x,最近看koa2也不错,然后想着学习一些找了一些教程,看到阮一峰的不错,做了一些修改,添减了一些东西,都加上了注释写好的东西放在了git上,大致目录贴到这里下边是demos文件夹下的内容:01-http-server.js02-context.js03-response.js04-template.js05-native-route...原创 2019-10-16 09:26:34 · 139 阅读 · 0 评论 -
【node】client和server关于请求参数的一些总结
总结:一.首先post和get参数都是通过key=value来传递,的不过位置不同get是把请求位置放在请求url路径里header是把请求数据放在header里边但是相同的一点是拼接方式是一致的:like:name=root&password=1234二.接下来讲一下get和post的时候,客户端和服务端都需要做什么1、针对get请求因为是直...原创 2019-10-14 08:57:14 · 463 阅读 · 0 评论 -
【node】path和fs常用方法和案例
一、准备知识var path = require("path");var fs = require("fs");(1)path__dirname //指的是当前文件夹path.resolve(__dirname, '..’) //父一级路径(2)fsvar files = fs.readdirSync(path); //读取路径下的所有文件fs....原创 2019-10-13 13:38:15 · 288 阅读 · 0 评论 -
【node】express4.x 路径匹配
pre:功能介绍这里写一个详情页跳转,用路径匹配的方法带参数但是个人并不建议这样写,在有get和post的情况下,路径匹配本身就有很大的局限性一、前端部分<div class="span4"> <h3> <a href="/post/<%= post.goodsimage %>"><%...原创 2019-10-08 14:13:44 · 284 阅读 · 0 评论 -
【node】express4.x post请求前后端
Pre:功能介绍这里可以理解为一个删除商品的接口,根据商品照片(商品照片名不重复且唯一),删除对应的商品对象,然后返回到首页或者用户页所以view需要给router传递一个image名,还有一个首页和用户页的flag一、前端部分<!-- 用post方法删除--><form style="background: white;border: 0px;text...原创 2019-10-08 11:43:38 · 219 阅读 · 0 评论 -
【node】express4.x get请求前后端
Pre:功能介绍这里以一个返回接口为例,因为要返回首页或者用户页,所以view需要给router传递一个flag,用于判断是返回到首页还是用户页一、前端部分<form style="background: white;border: 0px;text-align: center" action="/back" method="get" style="text-al...原创 2019-10-08 11:33:47 · 119 阅读 · 0 评论 -
【node】前端上传图片到服务器
pre:准备工作1.主要用到的三方包"moment":"~2.20.1", //时间"formidable": "*" //上传图片和表单内容获取可以直接加到package.json,也可以 “npm i 包名” 加载2.当前目录和上一级目录当前路径:__dirname上一级路径(注意引入path):path.resolve(...原创 2019-09-28 18:16:57 · 705 阅读 · 0 评论 -
【node】利用多核提高性能:cluster详解
从0.6版本开始node.js 提供了一个核心模块clustercluster的功能是生成与当前进程相同的子进程,并且允许父进程和子进程之间共享端口node.js的另一个核心模块child_progress也提供了相似的进程生成功能then,区别是什么呢?cluster允许跨进程端口复用,给我们的网络服务器开发,带来了很大的方便每个端口都代表着...原创 2019-09-14 21:27:55 · 1148 阅读 · 0 评论 -
【node】回调地狱解决之async
一、why?为什么要使用async因为嵌套回调的问题:eg: async1(function(){ async2(function(){ async3(function( async4(funciton(){ async5(function(){ ...原创 2019-09-14 16:22:54 · 280 阅读 · 0 评论 -
【node】express4.x : 写一个分页
pre:环境1.样式用的bootstrap,当然你也可以用其他的,不影响2.express版本是4.x3.async用的是最新版本,package.json中加的 : “async”:"*",主要是为了让分页逻辑更清晰实现效果:下边是具体的实现过程一、先说路由端var count = 0;//数据总条目var page = 0;//总页数var si...原创 2019-09-11 17:04:49 · 249 阅读 · 0 评论 -
【node】mac下node和npm更新以及遇到的问题
因为想试一下mongodb的一个三方驱动mongolass而这需要特定版本之上的node所以就更新一些,这里记录过程和遇到的问题!查看本机当前Node和npm版本node -vnpm -v清除node的cache(清除node的缓存)sudo npm cache clean -f安装"n"版本管理工具,管理node(没有错,就是n)sudo npm i...原创 2019-09-11 16:22:22 · 225 阅读 · 0 评论