window.location
location === window.location,记录的是浏览器URL的相关信息。
随手取了三个window.location
,最后结合 RFC 3986: Uniform Resource Identifier (URI): Generic Syntax @ ietf.org来分析一下URL结构
location === window.location,记录的是浏览器URL的相关信息。
随手取了三个window.location
,最后结合 RFC 3986: Uniform Resource Identifier (URI): Generic Syntax @ ietf.org来分析一下URL结构
这是一个类似平时的C-S模型,但在这模型中有一个问题,服务器能够获取到客户端的客户唯一标识,在微信中应该就是微信号。应该是出于保护用户隐私的目的,微信选择了使用openid
来代替微信号作为唯一标识,同时,openid
对于不同的公众号也是不同的,就是说,openid
具有以下特征:
openid
不同(废话)openid
不同那么问题来了,公众号小程序是怎么知道当前访问的用户是哪个用户呢?
除此之外,可能是为了防止伪造身份,微信公众号/小程序除了appid外还有一个secret,官方文档中称该参数安全性极高,不能放置于客户端,那么就意味着请求必须从服务端发送
这时就需要微信服务器作为中间件来做授权。
时代变了,ESLint 更新到9.x
之后,废弃了部分对格式的规则,只保留了对语法的校验。所以如果需要 ESLint 自动化格式,需要安装额外的插件以及配置。高版本配置请参考这篇文章
本文适用 eslint < 9.0.0
1 | npm install eslint |
之后根据提示操作,如使用 commjs、Airbnb 等
因为某项目要求 11-的 node 版本,然而另一个项目有要求 12+的版本,于是就发现了 nvm(Node Version Manager)
Releases · coreybutler/nvm-windows (github.com)
可以选择下载免安装版本(zip),或者安装版本(exe),我用的是 exe 版本。
安装略,中途会提示是否接管已安装版本,可以选是。
简单地了解了一下WebSocket,做一下总结
一种可以类比HTTP的应用层协议,与HTTP、HTTP类似,也有WS和WSS
为什么使用WS。
HTTP有他的劣势,即只能由客户端发起请求,然后由服务器回应。如果没有WS,就需要使用HTTP发起轮询——以固定时间间隔向服务器查询是否有新消息。
这样势必有一个问题,比如客户端接收直播弹幕,若由客户端频繁发起查询,必将带来大量冗余流量,所以B站的直播弹幕协议使用的是WS。
WS就相当于开启了一个长连接通道,客户端与服务器可以随时收发消息,是一种全双工模式。
什么是单工、半双工、全工通信?
信息只能单向传送为单工;
信息能双向传送但不能同时双向传送称为半双工;
信息能够同时双向传送则称为全双工。
记录一下对几种循环方式的学习笔记。
一句话概括,for ... in
是对索引的循环。
索引,对于数组和字符串而言就是0 - n
,对于对象而言就是对象的key
1 | let a = [1, 2]; |
事情的起因是这样的
我在NGA上看到个帖子,说是在不同的语言环境下的游戏文本
对应的编码不一样,对应的分别是Ascii编码的英文Longing
,UTF-8编码的日文的あこがれ
和中文的憧憬
就很好奇,跟着楼主给的链接去看了一下 Unicode 和 UTF-8