记软件开发满五年(二)——盘点这些年的改变

前言

人生从来就不是单一和乏味的,总是充满着理性和感性。
作为一个喜欢文科的人,我应该是比较感性的,但是作为一个程序员,我似乎更多的是应该保持理性。
感性容易引起别人的共鸣,而理性更应该拿数据说话,也许显得有些无趣,却可能更有实用的价值。

继续阅读全文 »

springboot2集成oauth2和keycloak以及admin rest api记录

前言

以keycloak作为sso认证中心服务端,springboot2的客户端集成方式有很多种,例如仅集成keycloak的jar包方式、集成spring security的方式、以及security+oauth2的方式等。
上述三种方式,从实现以及功能上来说均是一个比一个复杂。
另外,springboot作为普通客户端的同时,也可以进行更多的集成,进而实现对keycloak服务端的操作,这就涉及到keycloak中admin rest api的调用。
正常而言,rest api符合rest规范,应该是比较简单的。但是当rest api牵扯到各种权限和角色的时候,会发现很多其他的细节问题会导致这个rest接口无法调通,尤其是这些问题不是代码本身问题的时候,就会更加让人摸不着头脑。
以下是初步集成security+oauth2+admin rest api过程中部分踩坑记录,其中有很多细节还有待深入理解。

继续阅读全文 »

读《淘宝技术这十年》有感

前言

不知不觉间,在微信读书看书已经有好几十个小时了,也许是因为都是零碎时间看一看,所以一直也都仅限于看,只有输入而没有输出。
互联网时代知识太多,只限于看的层面可能要不了多久又会全部忘记,希望能从这里开始有一定的产出,让看书这件事更有意义一点,而不是变成一个消磨时间的手段。
刚好,最近读完的《淘宝技术这十年》在读的过程中做了一些摘抄,对有一些内容也是深有感触。

继续阅读全文 »

vue+element-ui搭建纯前台项目记录

架构说明

本次项目用于个人学习,作用于个人聚合支付demo,记录步骤,为以后作参考。
前台项目搭建的架构基础是前后台分离,即:从代码层面来说,前台和后台互不相干,不同的服务,不同的端口,前后台之前使用http协议进行交互。
前台基本技术架构为node.js+vue.js+element-ui+vue-router。

继续阅读全文 »

tzxPay个人聚合支付项目demo

需求描述

在上一家公司和目前公司均参与支付项目的开发,但因为都是中途参与,因此一直对整体业务不是很熟,所以觉得有必要从头到尾自己开发一遍。
各支付机构实际都封装有自己的sdk,可以集成之后进行很方便的开发,例如支付宝的sdk,可以让开发者把签名等很多过程都忽略掉。
但是集成支付机构sdk的缺点也很明显,那就是每接一个机构就需要集成该机构的sdk,会导致jar包不断增多。
同时,一旦支付机构的sdk进行了升级,可能自己的系统也需要跟着升级。
而且,如果支付机构的sdk出现了漏洞,由于开放下载,用的人多,相对也就有更大的安全风险。
因此,本系统自行进行签名等操作,不集成支付机构sdk。

继续阅读全文 »