
NodeJS
此鱼非闲鱼也
烦恼像根葱,往里一看全是空!
展开
-
webpack中loader的使用
webpack中的loader的使用1、什么是loader?loader 用于对模块的源代码进行转换。loader 可以使你在 import 或"加载"模块时预处理文件。因此,loader 类似于其他构建工具中“任务(task)”,并提供了处理前端构建步骤的强大方法。loader可以做哪些工作?可以将文件从不同的语言(如 TypeScript)转换为 JavaScript将内联图像转换为 data URL允许你直接在 JavaScript 模块中 import CSS文件2、loader原创 2020-05-30 22:27:43 · 960 阅读 · 0 评论 -
模块化的规范及规范兼容问题
模块化详细总结ECMAScript2015以后,原生js推出了模块化概念,称为ECMAScript Module,简称ESM。现在主流浏览器都有很好的支持模块化的作用把复杂的问题分解成相对独立的模块,这样的设计可以降低程序复杂性,提高代码的重用,有利于团队协作开发与后期的维护和扩展模块化的核心模块独立的作用域如何导出模块内部数据如何导入外部模块数据独立模块作用域一个文件就是模块,拥有独立的作用域,且导出的模块默认是处于 严格模式下,之前的文章有总结,小手点一点去看看严格模式原创 2020-05-27 20:49:47 · 757 阅读 · 0 评论 -
客户端存储cookie、以及localStorage和sessionStorage和cookie三者的异同
一、在koa中使用cookiecookie是http协议下,服务端或者脚本可以维护客户端信息的一种方式。储存cookie的值:ctx.cookies.set(name, value, [options])获取cookie的值:ctx.cookies.get(name, [options])options常用设置:1) maxAge 表示从 Date.now() 得到的毫秒...原创 2020-04-13 08:43:00 · 421 阅读 · 0 评论 -
浅谈CORS如何实现跨域访问
CORS全称"跨域资源共享"(Cross-origin resource sharing)。跨域资源共享是一份浏览器技术的规范,以避开浏览器的同源策略CORS约定服务器端和浏览器在HTTP协议之上,通过一些额外HTTP头部信息,进行跨域资源共享的协商。服务器端和浏览器都必需遵循规范中的要求。XMLHttpRequest支持通过withCredentials属性实现在跨域请求携带身份信息(Cr...原创 2020-04-10 21:09:09 · 618 阅读 · 0 评论 -
socket.io模块
Nodejs下引入socket.io模块,实现服务器端与客户端的长连接const Koa = require("koa");const Router = require("koa-router");const static = require("koa-static");let app = new Koa();let router = new Router();app.use(st...原创 2020-04-07 02:03:47 · 415 阅读 · 0 评论 -
Websocket跨域访问
WebSocket 是 HTML5 开始提供的⼀种在单个 TCP 连接上进⾏全双⼯通讯的协议,可以实现跨域访问。websocket安装命令 npm i ws -S服务器端:let WebServerSocket = require("ws").Server;let wss = new WebServerSocket({port:8200});const mysql = require("...原创 2020-04-07 01:50:52 · 4992 阅读 · 0 评论 -
sse服务器推送数据
SSE(server send event)服务器推送数据注意:推送数据的过程中不能中途停止推送 !服务器端:const http = require("http");const fs = require("fs");const url = require("url");let server = http.createServer((req,res)=>{ let ur...原创 2020-04-07 01:44:45 · 627 阅读 · 0 评论 -
koa+ajax+mysql实现网页对话
打开浏览器,进入某个网站时,经常会有这种对话窗口,双方可以像在qq聊天一样进行对话。今天来研究一下它是怎么实现的 。服务器端index.js//两个路由,一个用来加入聊天发送对话内容,另一个用来获取对话内容//获取对方发送过来的内容router.get("/getData",async ctx=>{ let [rows] = await connect.promise().q...原创 2020-04-07 01:38:15 · 191 阅读 · 0 评论 -
认识pug模板引擎
我们知道ES6后,javascript提供了一个模板字符串,可以实现模板引擎的功能,很方便好用,但是它需要写在js文件中,然而对一下大型而又复杂的项目而言,再这样写就不太好了,此时我们就需要借助外界的引擎模板来实现一些功能。什么是模板引擎呢?了解一下它的概念。模板引擎就是web应用中动态生成html的工具,负责将数据和模板结合。再来看一下比较流行的或者常用 的模板引擎有哪些呢?常见模板引擎...原创 2020-04-07 00:56:24 · 1741 阅读 · 1 评论 -
Koa框架的使用(二)-新闻管理
使用koa实现新闻管理,具体功能实现:主页新闻显示主页新闻分页详情页显示项目主目录下的data目录下的data.json文件(准备的新闻数据)[ { "id":1, "title": "18人死伤!韩国一男子纵火后持凶器伤害避险邻居", "content": "展馆人潮如织,商品琳琅满目,来自200多个国家和地区不同肤色的采购商...原创 2020-04-06 23:34:57 · 304 阅读 · 0 评论 -
Koa框架的基本使用(一)
官网解释Koa是基于Nodejs平台下的下一代web框架,Koa不在内核方法中调用任何中间件,它不仅是一个轻量级的函数库,几乎所有的功能都通过第三方来实现。它提供了一组可以快速优雅的编写服务器应用的方法。现在有Koa和Koa2两个版本,后者依赖于Nodejs7.6.0版Koa安装命令 npm i koakoa-router 监听路由,编写接口时使用,安装命令 npm i koa-rou...原创 2020-04-06 18:34:39 · 565 阅读 · 0 评论 -
GET和POST区别及优缺点
Get和Post在面试中一般都会问到,一般的区别:(1)post更安全(不会作为url的一部分,不会被缓存、保存在服务器日志、以及浏览器浏览记录中) (2)post发送的数据更大(get有url长度限制) (3)post能发送更多的数据类型(get只能发送ASCII字符) (4)post比get慢 (5)post用于修改和写入数据,get一般用于搜索排序和筛选之类的操作(淘宝,支付宝的搜索查询都...转载 2020-04-06 16:03:43 · 1213 阅读 · 0 评论 -
Nodejs中的Buffer缓冲区
Node.js Buffer(缓冲区)JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处理像TCP流或文件流时,必须使用到二进制数据。因此在 Node.js中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据的缓存区。Buffer的创建//Node 6.0以前的方式 new Buffer();//现在的创建方式 Buffer.allo...原创 2020-04-06 15:48:43 · 325 阅读 · 0 评论 -
文件上传(显示进度条、上传速度)
XMLHttpRequest对象使用XMLHttpRequest对象实现数据交互。//创建XMLHttpRequest对象let xhr = new XMLHttpRequest(); //let来创建(ES6版本以上)//为了应对所有的现代浏览器,检查浏览器是否支持 XMLHttpRequest 对象。//如果支持,则创建XMLHttpRequest对象。如果不支持,则创建 Acti...原创 2020-04-01 23:00:51 · 3500 阅读 · 0 评论 -
什么是Ajax?
ajax是异步的javascript和xmlajax是一种用于创建快速动态网页的技术通过在后台与服务器进行少量的数据交换,ajax可以对网页实现异步更新。即在不重新加载整个网页的情况下,对网页进行局部更新。传统网页(不适用ajax),需要更新内容时,必须重新加载整个网页。XML: 和JSON一样是目前主流的两种数据返还格式ajax的优点:1、最大的一点是页面无刷新,用户的体验非常好。...原创 2020-03-31 12:39:26 · 257 阅读 · 0 评论 -
node.js中fs文件操作模块
1、Node.js中的模块有哪些?(1)自定义模块:不需要安装,自定义使用,同级目录下必须加./位置是自定义的,导入时直接写模块名称(2)内置模块:node自带的,使用时直接引入即可;位置在node_modules 目录下,导入时直接写模块名称(3)外置模块:使用npm通过指令按需安装;位置是node_modules目录下,导入时直接写模块名称2、fs模块(内置模块)fs模块是文件操...原创 2020-03-31 00:17:44 · 579 阅读 · 0 评论