[Day 07] 前6天到底在瞎忙什麽? 当然是要打包成微服务阿! - .Net Core 3.1小试身手与简介

前几天做了那麽多准备工作,当然就是为了在之後能够很顺利的串接永丰金流API的其他服务

其实一开始收到API规格书的时候,也是看得十分雾煞煞......毕竟这是我第一次接触开放银行API,有些参数的原理也是在边写铁人赛+实作的过程中慢慢体悟的,例如说Nonce其实是作为IP验证,以确保时效性&来源是一致的,还有使用AES-CBC加密内文时需要的HashID . IV . 讯息内文JSON,也就是对应Key. 初始向量 . Value,不过通常在加解密时,会使用随机的IV值,才会是最安全的,这边可以参考维基百科说的:

使用乱数产生的初始向量才能达到语义安全(讯息验证码也可能用到初始向量),并让攻击者难以对原文一致且使用同一把金钥生成的密文进行破解。

讲到这边,就是今日的重头戏了,前六天谈了那麽多这些参数该如何准备,那麽又该如何把这些零件"组装"到自己的专案呢?


项次 参数 说明 范例 如何取得
1 Version 版本号 "1.0.0" 固定值
2 ShopNo 商店代号 "BA0026_001" Email提供
3 APIService API 服务名称 Ex:"OrderCreate" 共有三种,依照不同场景判断
4 Nonce 客户端IP验证(确保交易安全) Day03 由API向funBiz取得
5 Sign 安全签章 Day03 讯息内文+Nonce+HashID 加工产生
6 Message 加密JSON Day04. Day05 原始交易讯息内文+HashID(32位元值)+IV(16位元值)进行AES-CBC加密产生

看到这边,需要自己实作的部分,例如:

  1. 动态取得Nonce,也就是和丰收款API发出POST请求
  2. 杂凑、加解密,如SHA256, AES-CBC,以及位元运算等等
  3. 产出的JSON讯息内文,也需要再经过整理

欸嘿,曾经写过ASP.NET MVC(以下简称MVC)或是.Net Core的大大们,应该对以上三点很熟悉吧?
为了将线上金流API打包成一个微服务,一个好的架构设计是必须的这不是废话吗!?
但既然这次铁人赛是以 .Net Core 3.1 作为核心的开发架构,这次会就会先从.Net Core的框架设计开始介绍

先卖个关子,明天就会来开始介绍很重要很重要的 三层式架构
还不了解我今天到底说了什麽的同学闷,不要紧张!
可以先试想简单的问题:

如果今天开了一间速食餐厅,里面有贩售饮料、冰淇淋、汉堡、炸鸡、薯条,
从点餐、收银、备料、出餐、到叫号,你要如何分配工作给员工呢?

可以先想想看,应该很快就能明白了XD
See you!


<<:  [Day17] - 在 Vue 中引入现成的 Web Component

>>:  Day 06:Debug

D26 / 要怎麽放 Compose 进我的专案? - Compose View

今天大概会聊到的范围 ComposeView 之前有介绍过 Compose 中的 AndroidV...

Day25 - Dialog介绍

Dialog和Toast一样也是可以显示一段讯息 不一样的地方在於 Dialog有提供使用者输入的功...

【资料结构】前中後运算式转置

前中後运算式转置 中置运算式是人脑的计算中最直观且最习惯理解的表示式,会将运算子(EX:加号)放在两...

<Day22>用Shioaji API模拟帐户做台股下单

● 这章会示范如何用Shioaji做台股下单 终於来到下单的环节啦~~~ 没有下单过,别说你进入过股...

D10/ 我要怎麽把文字变美美的 - Text & AnnotatedString

今天大概会聊到的范围 AnnotatedString Text 在 Compose 中显示文字时,...