0

聊一聊二维码扫描登录原理

扫二维码登录现在比较常见,比如微信、支付宝等 PC 端登录,并且好像每款 APP 都支持扫码登录,不搞个扫码登录都不好意思。作为技术人员,不知道您对这背后的实现逻辑是否敢兴趣,反正我是一直都对这背后实现好奇。最近刚好看到一个关于扫码登录原理的视频,于是就整理出来了这篇文章,希望对您有所帮助。本文共三个主题:什么是二维码。移动端基于 token 的认证机制。二维码扫码登录的原理。1、什么是二维码二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型...

阅读全文>>

0

别再推荐 Git Flow 了

写在前面十年前,一篇名为《一个成功的 Git 分支模型》的文章将 Git Flow 推上了风口浪尖。在过去的十年里,无数个开发团队被这篇文章蒙在鼓里。说得严重一点,他们都被骗了。文章的作者宣称他们已经成功地将 Git Flow 引入到项目中,但对于如何在项目中取得成功的细节却只字未提。如果我们盲目地相信这篇文章所说的内容,那无疑是一个巨大的错误。我们必须承认,并不是所有的策略都适用于所有的情况、所有的人、所有的环境,而这个道理对于这个分支模型同样适用。为了更有说服里一点,让我们来更深入地探究一下为什么我们应该让 Git Flow 分支模型葬身火海。Git Flow 太复杂了Git Flow 太...

阅读全文>>

0

JSON、XML、TOML、CSON、YAML 大比拼

我们坚持使用 web 系统可以理解或不需要太多努力就能理解的特殊格式,而且对人类可读性特别有用的格式。每个都有各自的优缺点和适当的用例场景。-- Tim Anderson一段超级严肃的关于样本序列化的集合、子集和超集的文字我是一名开发者,我读代码,我写代码,我写会写代码的代码,我写会写出供其它代码读的代码的代码。这些都非常火星语,但是有其美妙之处。然而,最后一点,写会写出供其它代码读的代码的代码,可以很快变得比这段文字更费解。有很多方法可以做到这一点。一种不那么复杂而且开发者社区最爱的方式是数据序列化。对于那些不了解我刚刚抛给你的时髦词的人,数据序列化是从一个系统获取一些信息,将其转换为其它系...

阅读全文>>

0

程序员,请停止学习框架!

每过几年都有类似的文章出现,然而程序员却依然疲于学习新的框架,看完此文希望对你有所启示。这是一篇译文,原文在 Hacker News 上获得接近 500 个点赞。那么,译文开始。我们程序员,每天都在了解最新的技术,每天都在学习编程语言、框架和库。因为我们知道的现代编程工具越多越好,对吧?不停地追随 Angular、React、Vue、Riot、Ember、Knockout 的脚步还真是一件有意思的事情呢。(反话)有人说:当初刚从Android转前端的时候,一点基础也不会,什么html什么css,完全不懂,上手就是angular1.0,学的很痛苦,很难受,后续半年先后接触了vue和react,e...

阅读全文>>

0

每个程序员都必须知道的8种通用数据结构

数据结构是一种特殊的组织和存储数据的方式,可以使我们可以更高效地对存储的数据执行操作。数据结构在计算机科学和软件工程领域具有广泛而多样的用途。 几乎所有已开发的程序或软件系统都使用数据结构。此外,数据结构属于计算机科学和软件工程的基础。当涉及软件工程面试问题时,这是一个关键主题。因此,作为开发人员,我们必须对数据结构有充分的了解。在本文中,我将简要解释每个程序员必须知道的8种常用数据结构。一.数组阵列是固定大小的结构,其可以保持相同的数据类型的项目。它可以是整数数组,浮点数数组,字符串数组甚至数组数组(例如2维数组)。数组已建立索引,这意味着可以进行随机访问。图1.数组基本术语的可视化 1....

阅读全文>>

0

阿里面试官:什么是消息队列,为什么用消息队列,用了有什么问题

面试开始一个风度翩翩,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着铮亮的头,心想着肯定是尼玛顶级架构师吧!但是我们看过暖男敖丙的系列,腹有诗书气自华,虚都不虚。小伙子之前问了你这么多Redis的知识,你不仅对答如流,你还能把各自场景的解决方案,优缺点说得这么流畅,说你是不是看过《吊打面试官》系列呀?惊!!!老师你怎么知道的,我看了他的系列根本停不下来啊。呵呵,Redis没难住你,但是我问个新的技术栈我还怕难不住你?我问问你你项目中用过消息队列么?你为啥用消息队列?噗此,这也叫问题?别人用了我能不用么?别人用了我就用了呗,我就是为了用而用。你心里嘀咕就好了,千万别说出来哈,说出...

阅读全文>>

0

申请google adsense经验总结

大概经历了一个月左右,五六次的提交,终于google adsense通过了申请,大致讲一下申请google adsense需要注意的点,反正我这么做申请下来了,我不保证google一定按照这些去审核的,毕竟google没有公开审核标准,但起码我觉得这些技巧是在其中起到了很重要的作用。1.尽量用com域名之前涂便宜买了一个top域名,申请多次都没通过,所以大家不要图便宜买一些稀奇后缀的域名,一般这些域名比较适合做专业的项目网站,比如io域名适合做技术类的官网。这类的网站是不用靠搜索引擎来优化的,所以最安全保险的选择就是com域名,不要怕域名多长,因为你的网站的大部分的访问用户都是来源于搜索引擎,...

阅读全文>>

0

服务之间的调用为啥不直接用 HTTP 而用 RPC?

什么是 RPC?RPC原理是什么?什么是 RPC?RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务 A、B 部署在两台不同的机器上,那么服务 A 如果想要调用服务 B 中的某个方法该怎么办呢?使用 HTTP请求 当然可以,但是可能会比较慢而且一些优化做的并不好。 RPC 的出现就是为了解决这个问题。RPC原理是什么?服务消费方(client)调用以本地调用方式调用服务;client stub接收到调用后负责将方法、参数等组装成能够进行网络传输的消息体;client stub找到服务...

阅读全文>>

0

如何设计QQ、微信、微博等,第三方账号登陆?(附表设计)

前言:多账户登陆1. 创业初期用户名密码注册登陆手机号注册登陆2. 数据库设计3. 引入第三方账户方案4. 数据库设计5. 总结前言:多账户登陆互联网应用当中,我们的应用会使用多个第三方账号进行登录,比如:网易、微信、QQ等,我们把此称为多账户统一登陆。通过这篇文章, 我想阐释多账户登陆的技术方案细节,以及相应的表设计,流程设计。我这里不会有具体代码实现细节,只要方案做的对,有思路,代码咋写都不会太烂。1. 创业初期归结为创业初期是因为这个时候用户量比较少,甚至还没有接入上面所说的其他第三方的账户系统,只是自建的体系就可以满足,自建体系的话,目前常用的有如下解决方案:用户名密码注册登陆这种方式...

阅读全文>>

0

需要先登录的接口如何做性能测试?

需要先登录的接口如何做性能测试?我们的实际工作中,需要先登录,然后才能做某些操作的现象非常常见。但是,对于一个刚刚学会用jmeter做性能测试的人来说,这可能是自己的性能测试之路的第一个坎。为什么这么说呢首先,从这个诉求中,我们至少能提取出两个重要信息:1、需要登录2、登录后才能做以为着登录之后的接口,都有登录认证,判断是否登录,登录认证未通过,那么接口请求就会失败。那么好了,问题来了。我做性能测试,是需要用多个虚拟用户来实现并发的。场景一:我是用把所有虚拟用户使用同一个用户账户,每次都是先调登录接口,再调登录之后接口请求吗?如果你的系统,业务上允许一个用户在不退出情况下,反复登录,且没有登录...

阅读全文>>