加载中
从列表生成树 (JavaScript/TypeScript)

多数情况下,从服务端拿到用于树形显示的数据,本身是平面的,也就是列表。这是因为关系型数据库是以“行”为单位保存数据,所以它保存了每一个节点的数据,而这个数据中包含了它与父节点之间...

使用递归遍历并转换树形数据(TS程序)

一个朋友问我应该怎么从一个树的 JSON 数组生成 HTML,使用 <ul> 和 <li> 来构建页面元素。于是我简单的画了个树型结构图 然后写了对应的模拟数据(JavaScript 对象) const data = { name:...

2021/07/15 21:40
1.8K
安全地在前后端之间传输数据 - 「3」真的安全吗?

前置阅读: 安全地在前后端之间传输数据 - 「1」技术预研 安全地在前后端之间传输数据 - 「2」注册和登录示例 在「2」注册和登录示例中,我们通过非对称加密算法实现了浏览器和 Web 服务器之...

安全地在前后端之间传输数据 - 「2」注册和登录示例

本文在研究了使用非对称加密保障数据安全的技术基础上,使用 NodeJS 作为服务,演示用户注册和登录操作时对密码进行加密传输。 注册/登录的传输过程大致如下图: 搭建项目 1. 环境 为了不切换...

安全地在前后端之间传输数据 - 「1」技术预研

引 已经不是第一次写这个主题了,最近有朋友拿 5 年前的《Web 应用中保证密码传输安全》来问我:“为什么按你说的一步步做下来,后端解不出来呢?”加解密这种事情,差之毫厘谬以千里,我认为...

安全地在前后端之间传输数据 - 「1」技术预研

引 已经不是第一次写这个主题了,最近有朋友拿 5 年前的《Web 应用中保证密码传输安全》来问我:“为什么按你说的一步步做下来,后端解不出来呢?”加解密这种事情,差之毫厘谬以千里,我认为...

2020,感谢有你!2021,再出发!

朋友们,新年快乐!2020 年过去了,“边城客栈”在过去的一年里,推送原创文章 12 篇,涨粉 20%。感谢大家的支持!尤其是下半年几乎没有更新(为什么会这样,请看下文)的情况下还在不断涨粉...

数组去重(JavaScript 为例)

数组去重,就是在数组中查找相同的元素,保留其中一个,去除其他元素的程。 从这句话揭示了数组去重的两个关键因素: 找到重复项 去除重复项 本文告诉你在遇到去重问题时该如何思考,并以 Ja...

默认值+TS类型约束提高数据处理成功率

我们在处理数据时,常常会遇到某项数据或者属性是 undefined,从而引起中断性错误,造成数据处理失败。解决这一问题最直接的办法就是在使用前判断是否 undefined ,但是如果每一个数据使用前...

还搞不懂闭包算我输(JS 示例)

闭包并不是 JavaScript 特有的,大部分高级语言都具有这一能力。 什么是闭包? A closure is the combination of a function bundled together (enclosed) with references to its surround...

JavaScript 和 TypeScript 的封装性 —— 私有成员

JavaScript 使用了基于原型模式的 OOP 实现,一直以来,其封装性都不太友好。为此,TypeScript 在对 JavaScript 类型进行增强的同时,特别关注了“类”定义。TS 的类定义起来更接近于 Java 和...

JavaScript 的 this 指向问题深度解析

JavaScript 中的 this 指向问题有很多博客在解释,仍然有很多人问。上周我们的开发团队连续两个人遇到相关问题,所以我不得不将关于前端构建技术的交流会延长了半个时候讨论 this 的问题。 ...

离开后端说前端加密都是空谈

最近有朋友在使劲研究如何不使用 HTTPS 的情况下保护用户密码安全。暂且不说研究过程,但结论是要保障安全必须后端参与,使用非对称加密算法 —— 如此一来,不如直接用 HTTPS 更简单便捷有保...

前后端分离:分离开发,一体发布

前后端分离开发实践很久了,前两天需要把一个项目上线,准备 SSL 证书时发现,居然需要申请 3 个证书(1 年期免费的证书只能对单个子域名申请),这 3 个域名是: sys.project.cn,Web 应用前...

前后端分离实践

前后端分离并不是什么新鲜事,到处都是前后端分离的实践。然而一些历史项目在从一体化 Web 设计转向前后端分离的架构时,仍然不可避免的会遇到各种各样的问题。由于层出不穷的问题,甚至会有...

改进异步封装:处理带返回值的异步调用

最近几篇文章都跟微信小程序开发有关,所以有人就问:“小程序不懂啊,能不能写点别的?”。 其实不用太在意“小程序”这件事情,因为“小程序”在文章中只是一个开发场景,我们实际解决的问...

代码审查,异步调用的常见问题剖析

先来看一段代码,就是一小段而已: export function loginWithWx() { wx.showLoading({ title: "登录中..." }); wx.login({ success: res => { wx.request(......

Proxy 封装微信小程序的异步调用

上回写到: 没看上回的同学,请去公众号里找找吧:点上面蓝色的“边城客栈”进入公众号就看到啦!记得订阅哦! // utils/async.js function wxPromisify(fn) { return async function(args)...

在微信小程序中使用 async/await

微信小程序中有大量接口是异步调用,比如 wx.login()、wx.request()、wx.getUserInfo() 等,都是使用一个对象作为参数,并定义了 success()、fail() 和 complete() 作为异步调用不同情况下的...

Proxy 封装微信小程序的异步调用

上回写到: 没看上回的同学,请去公众号里找找吧:点上面蓝色的“边城客栈”进入公众号就看到啦!记得订阅哦! // utils/async.js function wxPromisify(fn) { return async function(args)...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部