AJAX March 28, 2019

如何在 Web 关闭页面时发送 Ajax 请求

Words count 4.3k Reading time 4 mins.

有时候我们需要在用户离开页面的时候,做一些上报来记录用户行为。又或者是发送服务器ajax请求,通知服务器用户已经离开,比如直播间内的退房操作。

本文主要分两部分来讲解怎么完成退出行为的上报。

浏览器有...

Read article

AJAX March 28, 2019

如何在 Web 关闭页面时发送 Ajax 请求

Words count 4.3k Reading time 4 mins.

有时候我们需要在用户离开页面的时候,做一些上报来记录用户行为。又或者是发送服务器ajax请求,通知服务器用户已经离开,比如直播间内的退房操作。

本文主要分两部分来讲解怎么完成退出行为的上报。

浏览器有两个事件可以用来监听页面关闭,beforeunloadunload
beforeunload是在文档和资源将要关闭的时候调用的, 这时候文档还是可见的,并且在这个关闭的事件还是可以取消的。比如下面这种写法就会让用户导致在刷新或者关闭页面时候,有个弹窗提醒用户是否关闭。

window.addEventListener...
Read article

VUE March 27, 2019

「从源码中学习」面试官都不知道的Vue题目答案

Words count 9.2k Reading time 8 mins.

原文地址

当回答面试官问及的Vue问题,我们除了照本宣科的回答外,其实还可以根据少量的源码来秀一把,来体现出你对Vue的深度了解。

new关键字代表实例化一个对象, 而Vue实际上是一个类, 源码位置是/src/core/instance/index.js

function Vue (options) {
  if (process.env.NODE_ENV !== 'production' &&
    !(this instanceof Vue)
  ) {...
Read article

NODE March 26, 2019

Node学习(五) --Node.js的模块化

Words count 2.3k Reading time 2 mins.

Nodejs的模块化由于出现的较早,因此它遵循的是CommonJS规范,而非ES6的模块化。

在Nodejs的模块化中,最常用到的有module对象、exports对象、require方法

其中module和exports用于输出模块,require用于引用模块。

先新建一个module1.js文件,代码如下:

module.exports.a = 1
module.exports.b = 2

let c = 3

在require.js中,引入模块并打印:

const module1 = require...
Read article

NODE March 25, 2019

Node学习(四) --处理接收到的POST数据

Words count 9.3k Reading time 8 mins.

POST数据量通常较大,通常不会一次性从客户端发送到服务端,具体每次发送的大小由协议,以及客户端与服务端之间的协商决定。

因此,Nodejs在处理POST数据时,需要通过request对象的data事件,获取每次传输的数据,并在end事件调用时,处理所有获取的数据。

request对象是一个http.IncomingMessage 类,而它实现了可读流接口,因此具有了可读流的data、end等事件。

需要注意的是,data事件中传入的参数是BufferBuffer只是一个二进制的数据,它有可能...

Read article

NODE March 19, 2019

Node学习(三) --处理接收到的GET数据

Words count 1.8k Reading time 2 mins.

GET和POST是最常用的HTTP请求方法,除此之外还有DELETE、HEAD、OPTIONS、PUT、TRACE等,但都很少用到。

GET POST
主要用于获取数据 主要用于发送数据
数据放在HTTP请求Header中,通过URL进行传输,容量<=32k 数据放在HTTP请求body中,容量大,通常上限2G

我们可以使用Nodejs自带的url和querystring模块处理接收到的GET数据。

首先新建一个带form表单的HTML文件,讲输入的数据提交到服务器地址...

Read article
Load more
0%