- 博客(27)
- 收藏
- 关注
原创 APP 签名认证方案完整落地示例
1、通过AOP joinPoint.getArgs() 得到controller中,对应方法的参数DTO,此方式需要APP传递的json中包含字段与该DTO包含字段完全对齐。但某些情况下,如已开发一段时间后,后端接口变更,导致某些字段弃用,但前端并未及时update,若字段对齐工作大则可能不太适用。
2023-12-14 19:15:47 502
原创 API Gateway 将“源IP”穿透ALB到pod的方法
文章目录API Gateway 配置ALB 配置API Gateway 配置ALB 配置
2023-11-08 00:06:18 116
原创 AWS——cognito 使用记录
Amazon Cognito 用户群体是用于 Web 和移动应用程序身份验证和授权的用户目录。从应用程序的角度来看,Amazon Cognito 用户群体是 OpenID Connect(OIDC)身份提供者(IdP)。用户群体为安全性、身份联合验证、应用程序集成和用户体验自定义添加了多层附加功能。定义身份验证质询 Lambda 触发器是自定义身份验证流程的第一步。它会将初始自定义质询名称返回给 Amazon Cognito。它还可以根据您的自定义逻辑立即颁发令牌。
2023-09-04 10:51:50 873
原创 AWS——API Gateway
文章目录APIHTTP API构建操作*路由*授权集成部署——阶段REST API构建操作*资源*阶段授权方自定义域名ACM证书?API 映射VPC链接REST APIHTTP API子网?安全组?API选择创建API的类型时,创建的是对公访问的gateway方式;并非是转发请求到内部服务器的访问方式。HTTP API构建操作路由创建路由,匹配任意路由时,用/{proxy+},例:/member/v1/member360/forapp/auth/{proxy+}授权授权:访问此路由是否
2022-05-12 18:27:32 3919
原创 JMockit 简单小结
1、引入 <!-- 如果使用Junit4.5以上 jmockit依赖需要在junit4之前 --> <!-- 或者在测试类上添加注解 @RunWith(JMockit.class) --> <!-- 如果是TestNG 6.2+ 或者 JUnit 5+, 没有位置限制 --> <dependency> <groupId>org.jmockit</groupId> <artifactId>jmock
2021-12-27 17:05:56 493
原创 magento2 简单使用
文章目录magento2dbeav常用命令重写插件magento2m2的核心源代码通过composer install后,存放在vendor/magento里db在app/etc/文件夹下会多出config.php和env.php两个php文件,config.php可以看到magento2加载了那些模块;env.php保存了连接的数据库的一些信息eav1、eav_entity_type 表: eav_entity_code: 代表 实体(表名)attribute_model: 实例化mode
2021-12-20 17:41:08 3392
原创 react 的初步理解
文章目录statesetState(partialState, callback)state 的更新可能是异步state 的更新会被合并redux检查点:react-reduxreact-router只会渲染一个路径Route渲染内容的三种⽅方式children:funcrender:funccomponent: componentpureComponentstate不能直接修改state,需借助setState()setState(partialState, callback)partialSt
2021-04-19 15:55:49 532
转载 react 的生命周期
文章目录React v16.0前的生命周期组件初始化(initialization)阶段组件挂载(Mounting)阶段组件的更新(update)阶段造成组件更新的两类(三种)情况1、父组件重新render2、组件本身调用 setState卸载阶段React v16.4+ 的生命周期React v16.4后的getDerivedStateFromPropsgetSnapshotBeforeUpdateReact v16.0前的生命周期组件初始化(initialization)阶段也就是以下代码中类的
2021-04-18 21:31:54 80
原创 vue性能优化
文章目录路由按需加载vue异步组件懒加载webpack的require.ensure()页面缓存路由按需加载vue异步组件const router = new VueRouter({ routes: [ { path: '/foo', component: (resolve) => require(['./Foo.vue'], resolve) } ]})懒加载const router = new VueRouter({ routes: [ // { path: '/lis
2021-04-17 16:43:10 427
原创 vue 的若干问题
文章目录v-if 和 v-for 的优先级高低解决方法v-if 和 v-for 的优先级高低由源码可知,v-for 的优先级高于 v-if如果 v-if 和 v-for同时出现,则每次渲染都会先执行循环再判断条件;若v-if=false,则浪费了性能。<p v-for="item in list" v-if="isShow"></p>解决方法1、 v-if先于v-for执行<template v-if="isShow"> <p v-for
2021-04-17 10:37:41 128
原创 前端的某些概念
文章目录同构直出同构直出直出: 服务器端渲染并输出同构: 前后端(这里的“后端”指的是直出端,数据接口不一定由node开发)使用同一套代码方案,方便维护
2021-04-16 12:35:49 89
原创 $attrs 和 $listeners
$attrs 和 $listeners文章目录$attrs 和 $listeners$attrs$listenersinheritAttrs(补充)$attrs只读包含了父作用域中不作为 prop 被识别 (且获取) 的特性绑定 (class 和 style 除外)。当一个组件没有声明任何prop 时,这里会包含所有父作用域的绑定 (class 和 style 除外),并且可以通过 v-bind="$attrs" 传入内部组件——在创建高级别的组件时非常有用。优点在于避免传多个参数时,都要声明
2021-04-12 21:17:55 92
原创 vue的一些实例属性和方法
vue的实例属性和方法Vue 实例暴露了一些有用的实例属性与方法。这些属性与方法都有前缀 $,以便与代理的数据属性区分。文章目录vue的实例属性和方法一、实例属性DOM访问vm.$el(只读)数据访问vm.$datavm.$options组件树vm.$parentvm.$rootvm.$childrenvm.$refs二、实例方法1.数据一、实例属性DOM访问vm.$el(只读)type: HTMLElement返回当前 Vue 实例正在管理的 DOM 元素。即:渲染出来的html元素
2021-04-12 10:26:30 170
原创 vue的生命周期函数
每个vue实例在被创建时都要经过一系列的初始化过程1、beforeCreate组件实例还未创建,一般用于加loading事件或一些初始化任务2、 created组件初始化完毕,但此时未挂载,没有DOM,常用于异步数据获取// 异步写法async created() { const data = await getData() this.data = data}3、 beforeMount未执行组件渲染,在挂载开始之前被调用:相关的 render 函数首次被调用。4、 mounte
2021-03-15 15:55:53 152
原创 computed和watch浅析
1、computed1.1 表达式computed: { total() { return this.data + '分' }, // get、set用法 count() { get() { // 默认回调函数,当读取count值时响应 return this.a + this.b }, set (val) { // 监视count值的变化,更新相关数据 this.b = val - this.a } }}1.2 特点计算属性有缓存性;如果this.d
2021-02-19 15:39:25 134
原创 Node.js基础
1、基础1.1 使用模块(module)内建模块const os = require("os")第三方模块const cpuStat = require("cpu-stat")自定义模块// rate.js 自定义模块let rate;function rmbToDollar(rmb){ return rmb/rate;}// 传参定义ratemodule.ex...
2019-08-26 15:51:09 156
原创 vue组件化
vue组件开发1、组件注册1.1全局注册import DtContainer from './components/DtContainer'Vue.component('dt-container', DtContainer)使用<template> <dt-container></dt-container></template&g...
2019-08-23 16:17:08 205
转载 JS性能优化 之 文档片段 createDocumentFragment
我们用原生JS进行开发时,经常会用到两种更新DOM节点的方法:innerHTML 和 appendChild() 。其中 innerHTML 会完全替换掉原先的节点内容,如果我们是想向元素追加子节点的话,那么 innerHTML 显然满足不了需求。 转而我们就会想到 appendChild() 方法。appendChild方法接收的参数类型为单个的节点类型对象。因此当我们要添加多个子节点时,只能通...
2019-08-23 16:16:47 310
原创 MVVM 原理解析
1、小试牛刀<html><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-sc...
2019-08-23 16:15:42 403
原创 vuex简单使用
1、配置介绍{ state: {} // 存放动态数据 mutations: {} // 这里里面是改数据的,用this.$store.commit() 方法 getters: {} // 计算数据,类似于vue的 computed actions: {} // 如果我有异步操作,需要在这里执行后,commit mutaions中的函数改变数据;组件通过this.$store.dispa...
2019-08-07 10:48:43 116
原创 Vue-router 简单分析
1、router、routes、route的区别router: 是全局路由的实例。可以由它来导航到具体的路由,如:$router.push() 方式routes:指创建vue-router路由实例的配置项。用来配置多个route路由对象, 接受的是数组。route: 是当前的路由对象,包含了当前 URL 解析得到的信息。包含当前的路径,参数,query对象等。2、重定向 redirec...
2019-08-06 18:24:37 126
原创 vue非父子通讯——bus总线
1. 介绍在vuex加入后,让组件之间的通信更加的清晰,中大型项目建议这种方式。但是在小微型项目中,用$bus总线的方式会更加快捷一些。2. 关于事件Vue事件分两部分,一是DOM绑定事件,二是自定义事件。DOM绑定事件用 v-on 或语法糖 @ 方式来绑定Vue自定义事件是为组件间通信设计,自定义事件提供 $on、$once、$off、$emit$on监听当前实例上的自定义事件。事...
2019-08-01 11:33:58 603
原创 redux-actions源码解析
1. 什么是redux-actionsredux-actions是一个简化action和reducer创建的一个封装库常用API函数:createAction()handleActions()2. createAction()2.1 用法一般创建Action方式:export const addTodo = (text) => ({ type: 'ADD_TODO',...
2019-07-31 16:43:27 244
原创 react-redux源码分析
connect// (mapStateToProps = state => state, mapDispatchToProps = {}) => (WrapComponent) => {}: 就是个高阶组件,装饰WrapComponent组件export const connect = (mapStateToProps = state => state, mapDisp...
2019-07-31 14:25:02 127
原创 redux中间件机制
源码如下:export function createStore(reducer, enhancer) { if (enhancer) { return enhancer(createStore)(reducer) } let currentState = {} // 当前状态 let currentListeners = [] // 响应器(订阅功能) fun...
2019-07-31 12:12:07 134
原创 ES6生成器Generators
1. 示例function* helloWorldGenerator() { yield 'hello'; yield 'world'; return 'ending';}var hw = helloWorldGenerator();
2019-07-31 11:51:43 126
原创 react JSX 原理解析
what?JSX是对js语法的扩展,使我们可以用类似xml方式描述视图why?执行快、类型安全、开发简单快速how?babel-loader会预编译jsx为 React.createElement(type, props, …chilren)...
2019-07-30 15:30:22 791
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人