自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (4)
  • 收藏
  • 关注

原创 NPOI三种导出方式区别

HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls;导出excel最常用的方式;但是此种方式的局限就是导出的行数至多为65535行,超出65536条后系统就会报错。XSSFWorkbook:是操作Excel2007后的版本,扩展名是.xlsx;为了突破HSSFWorkbook的65535行局限。其对应的是excel2007(1048576行,16384列)扩展名为“.xlsx”,最多可以导出104万行,不过这样就伴随着一个问题—OOM内存溢出,原因是你所创建

2021-07-09 14:15:13 417

原创 NPOI HSSFWorkbook自建格式导出

using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;using System.IO;using Microsoft.AspNetCore.Mvc;using NPOI.HSSF.UserModel;using Microsoft.EntityFrameworkCore;using NPOI.SS.UserModel;using Jiumu.Entity;

2021-07-09 14:03:05 323

原创 Angular应用常见错误

1.导入所需的角度模块Can’t bind to ‘ngModel’ since it isn’t a known property of ‘input’此错误表明,尚未将 angular Forms Module导入到您的模块中。Unhandled Promise rejection: No provider for HttpClient!此错误告诉您尚未将angular HttpClient 模块导入到您的(根)模块中。解决方案要解决此问题,您需要将缺少的模块导入模块中。在大多数情况

2021-05-08 14:23:23 873

原创 docker设置jsq攻略

如果你挂着vpn请忽略攻略一1、docker-machine ssh default2、sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=YOURMIRROR |g" /var/lib/boot2docker/profile3、exit4、docker-machine restart default攻略二(虽然不优雅,...

2020-01-03 15:09:59 706 1

原创 Angular服务测试

import { TestBed } from ‘@angular/core/testing’;import { DesignService, PBoxTitle } from ‘./design.service’;import { HttpToolsService, ResultData } from ‘…/public/services/http-tools.service’;impor...

2020-01-03 14:25:02 489

原创 Laravel-JWT

<?php//namespace App\Helper;use \DomainException;use \InvalidArgumentException;use \UnexpectedValueException;use \DateTime;use Cache;use App\Helper\Header;use Log;class Token{ /**...

2019-03-05 17:21:05 340

原创 商品详情页规格弹出层(小程序)

<view bindtap='showModal'>click me</view><code class="language-html"><!--屏幕背景变暗的背景 --><vi

2019-03-05 17:20:18 2460 1

原创 TCP三次握手 四次挥手

(1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送(报文段4)。(2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1(报文段5)。和SYN一样,一个FIN将占用一个序号。(3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A(报文段6)。(4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1(报文段7)...

2019-02-26 10:06:39 144

原创 XSS防护策略及轮子

轮子国人(支持node) https://github.com/leizongmin/js-xss/blob/master/README.zh.md外国(仅限DOM-xss) https://github.com/cure53/DOMPurifyXSS攻击类型存储型 XSS存储型 XSS 的攻击步骤:1.攻击者将恶意代码提交到目标网站的数据库中。2.用户打开目标网站时,网站服务端将...

2019-02-26 10:06:18 988

原创 JWT token认证

什么是JSON Web TokenJWT 是 Json Web Tokens 的缩写,与传统 Web 的 Cookies 或者 Session 方式的认证不同的是,JWT 是无状态的,服务器上不需要对 token 进行存储,也不需要和客户端保持连接。而 JWT 的 token 分3个部分,首先是头部 ,表明这是一个JWT,并指明加密方式,第二部分是负载,其中可以包含 账户名、ID、邮箱等用户信息...

2019-02-26 10:05:51 471

转载 CSRF-防护

结论:1、双重Cookie*Cookie中增加了额外的字段。*如果有其他漏洞(例如XSS),攻击者可以注入Cookie,那么该防御方式失效。*难以做到子域名的隔离。*为了确保Cookie传输安全,采用这种防御方式的最好确保用整站HTTPS的方式,如果还没切HTTPS的使用这种方式也会有风险。2、CSRF Token的防护Token是一个比较有效的CSRF防护方法,只要页面没有XSS...

2019-02-26 10:05:27 846

原创 ES6字符串扩展小记

http://es6.ruanyifeng.com/#docs/stringcodePointAt方法是测试一个字符由两个字节还是由四个字节组成的最简单方法。function is32Bit(c) { return c.codePointAt(0) > 0xFFFF;}is32Bit("

2019-02-26 10:04:24 128

原创 笔记--数组扁平化

多级数组扁平化处理扁平化,就是将一个嵌套多层的数组 array (嵌套可以是任何层数)转换为只有一层的数组(不改变原数组,所以不能用push添加到现有阵列)ES6 扩展运算符 …var arr = [1, [2, [3, 4]]];function flatten(arr) { while (arr.some(item => Array.isArray(item))) {...

2019-02-26 10:03:26 195

原创 Javascript组合继承模式和寄生式组合继承的区别

组合继承function Parent (name) { this.name = name; this.colors = ['red', 'blue', 'green'];}Parent.prototype.getName = function () { console.log(this.name)}function Child (name, age) { ...

2019-02-20 16:50:28 2603

转载 JavaScript 深入之从 ECMAScript 规范解读 this

JavaScript深入系列第六篇,本篇我们追根溯源,从ECMAScript5规范解读this在函数调用时到底是如何确定的。前言在《JavaScript深入之执行上下文栈》中讲到,当JavaScript代码执行一段可执行代码(executable code)时,会创建对应的执行上下文(execution context)。对于每个执行上下文,都有三个重要属性变量对象(Variable ob...

2019-02-19 11:21:12 245

原创 Https优化方案(业务代码篇--消除Mix Content)

1.对于web来说基本前端所有链接都是使用相对协议,所以不存在大的问题,通用config文件修改对应的http为https;2.端基本我们都会定义一个配置文件来统一控制应用的请求,修改就比较简单修改url地址改为https就行了;3.APP原始无法识别相对协议就需要封装底层适配协议了;如果说你的应用没有模块化工程化那你就要反思了;为了保证完全迁移到https,(1)我们还需要对源码中的h...

2018-12-07 16:26:29 1782

原创 Https优化方案(减少通信RT篇--TLS False Start)

https通信示意图开启TLS False Start后的https通信是示意图可以看出,在TLS协商第二阶段,浏览器发送ChangeCipherSpec和Finished后,立即发送加密的应用层数据,而无需等待服务器端的确认。具体可以通过抓包来看一下未开启TLS False Start可以看出,浏览器端在发送ChangeCipherSpec和Finished后,处于等待状态,直...

2018-12-07 11:19:12 1531

原创 优化后的https--nginx配置示例

server { listen 443 ssl; server_name varycloud.com; access_log off; ssl_certificate cert.pem; ssl_certificate_key cert.key; # session tacket session cache option...

2018-12-06 17:20:51 325

原创 Https优化方案(优化证书验证篇--OCSP)

一句话概括就是:OCSP 是server 把自己的站点证书和中间证书以及根证书打包一起下发到客户端,省去客户端查询的过程。OCSP实时查询会增加客户端的性能开销。因此,可以考虑通过OCSP stapling的方案来解决:OCSP stapling是一种允许在TLS握手中包含吊销信息的协议功能,启用OCSP stapling后,服务端可以代替客户端完成证书吊销状态的检测,并将全部信息在握手过程...

2018-12-06 17:15:32 12929

原创 Https优化方案(请求响应篇--HSTS)

HSTS(HTTP Strict Transport Security, HTTP严格传输安全协议)表明网站已经实现了TLS,要求浏览器对用户明文访问的Url重写成HTTPS,避免了始终强制302重定向的延时开销。HSTS的实现原理是:当浏览器第一次HTTP请求服务器时,返回的响应头中增加Strict-Transport-Security,告诉浏览器在指定的时间内,这个网站必须通过HTTPS协...

2018-12-06 15:53:37 960

原创 apache下https配置与优化性能具体操作

声明:以下操作路径及 httpd.conf文件与原始文件有所区别,博主采用的httpd.conf引入其他配置文件进行分项目管理,大体操作类似*可以忽略此段 -http.txt 文件为80端口配置文件修改后缀为conf,重启apache服务(service httpd restart),即可使用http进行访问项目;httpd.conf文件修改如下关于opensLL 证书和密钥配置的说明(可以...

2018-12-06 11:25:15 1699

原创 Https优化方案(服务端优化配置篇--重用Session)

HTTPS的主要缺点是需要设置连接,每次新的TLS连续都需要握手,以便创建共享的加密密钥,这个握手过程在标准TCP的握手过程之上还需要两个额外的来回过程,用这样一个高延时的连接,在网站第一个字节传输之前需要三个来回就让人感觉这个网站有点慢。TLS有几个特征可以用来消除额外的来回,比如重用一个会话session,两个标准会话重用机制是 session IDs (RFC5246) 和 sessi...

2018-12-06 11:07:13 2802

转载 清理异常指令、文件和问题用户

1.查看哪些用户拥有/bin/bash权限cat /etc/passwd2.检查常用命令是否被篡改(1)找到命令文件的路径(whereis和which)whereis netstatwhich netstatwhich netstat/bin/netstatwhereis netstatnetstat: /bin/netstat /usr/share/man/man8/net...

2018-11-22 17:37:42 366

原创 查找恶意进程和文件

1、检查CPU内存指令:top按大写的“P”键将内容按CPU占用率排序,查看占用率高的进程和PID2、根据PID找到进程文件位置(1)ps -ef |grep PID号ps -aux | grep PID号(2)利用/proc/PID号ll /proc/PID号 有一行内容为“exe -> /xxx/xxxx/xxxxx”即为该进程目录ls -l /proc/PID号/exe...

2018-11-22 16:26:26 2908

原创 ssh远程登陆日志分析

环境:CentOS (其他发行版略有不同)本文适合具备linux基础的同学确认自己的登录信息以及目前登陆服务器的用户列出所有登陆账户w 列出当前账户 who am i 1、查看成功登陆日志指令:cd /var/logless secure | grep 'Accepted'正常登陆状态日志: 月份 日期 时分秒 服务器主机名 程序(ss...

2018-11-22 10:17:49 12989

转载 docker容器间通信(非网桥方式)

默认情况下,Docker 会将所有容器连接到由 docker0 提供的虚拟子网中。用户有时候需要两个容器之间可以直连通信,而不用通过主机网桥进行桥接。解决办法很简单:创建一对 peer 接口,分别放到两个容器中,配置成点到点链路类型即可。首先启动 2 个容器:$ docker run -i -t --rm --net=none base /bin/bashroot@1f1f4c1f931...

2018-10-25 13:57:31 900

原创 在 Swarm 集群中管理配置数据

在 Docker 17.06 以上版本中,Docker 新增了 docker config 子命令来管理集群中的配置信息注意:config 仅能在 Swarm 集群中使用。以下操作请在管理节点操作创建 config新建 redis.conf 文件port 6380此项配置 Redis 监听 6380 端口我们使用 docker config create 命令创建 config...

2018-10-24 10:09:23 432

原创 使用Nexus3.x搭建Docker私有仓库

1、启动 Nexus 容器(启动Nexus前最好先确定私有仓库的端口)$ docker run -d --name nexus3 --restart=always \ -p 5000:5000 -p 8081:8081 \ --mount src=nexus-data,target=/nexus-data \ sonatype/nexus3等待 3-5 分钟,如果 n...

2018-10-18 14:51:21 5142 1

原创 修改docker私库的地址(设置docker访问白名单)

1、进入虚拟 docker bash 中:docker-machine ssh default2、 打开并编辑 /var/lib/boot2docker/profile 文件中的 EXTRA_ARGS 信息:sudo vi /var/lib/boot2docker/profile--insecure-registry xxx.xxx.xxx.xxx:yyy //在 --label ...

2018-10-18 11:25:15 11909 3

原创 在window下修改docker配置文件daemon.json

win10以下用户右击client查找文件所在目录,然后检索daemon.json进行修改win10用户上述方法也适用,更详细的配置可以参考 微软官方描述 建议收藏

2018-10-17 14:54:46 28428

原创 SSL证书生成

新建一个文件夹,以下步骤均在该文件夹中进行。准备站点证书如果你拥有一个域名,国内各大云服务商均提供免费的站点证书。你也可以使用 openssl 自行签发证书。下面我们介绍使用 openssl 自行签发 docker.domain.com 的站点 SSL 证书。第一步创建 CA 私钥。$ openssl genrsa -out "root-ca.key" 4096第二步利用私钥创建 C...

2018-10-16 14:00:25 2864

转载 dockerfile中ONBUILD指令的使用

ONBUILD 为他人做嫁衣裳格式:ONBUILD <其它指令>。ONBUILD 是一个特殊的指令,它后面跟的是其它指令,比如 RUN, COPY 等,而这些指令,在当前镜像构建时并不会被执行。只有当以当前镜像为基础镜像,去构建下一级镜像的时候才会被执行。Dockerfile 中的其它指令都是为了定制当前镜像而准备的,唯有 ONBUILD 是为了帮助别人定制自己而准备的。假设我...

2018-10-15 13:45:53 6343

转载 npm 和 yarn 缓存策略对比

npm缓存命令npm cache 提供了三个命令,分别是npm cache add, npm cache clean, npm cache verify。npm cache add官方解释说这个命令主要是 npm 内部使用,但是也可以用来手动给一个指定的 package 添加缓存。(This command is primarily intended to be used internal...

2018-10-15 10:12:58 3467

转载 用户登录及API接口设计

原文:http://www.cnblogs.com/wuhuacong/p/4620300.html#!comments这篇思路可以算目前主流设计方案,其中可能产生的疑惑点解析:1、如果是web分离开发秘钥可以采用非对称加密;2、安全性上面采用https(Ps:在安全性要求不是非常严格的情况下,不用TLS的“安全”,都是掩耳盗铃)------------------------------...

2018-09-27 16:08:20 42055

原创 华为笔试题-2

【华为笔试-Nodejs版本】 题目描述 输入任意个字符串,将其中的小写字母变为大写,大写字母变为小写,其他字符不用处理 输入描述: 任意字符串: abcd2#xY2 输出描述: 输出字符串:ABCD123Xyzconst readline = require('readline');const rl = readline.createInterface({ input: p...

2018-08-09 10:51:48 587

原创 华为笔试题-1

【华为笔试-NodeJS版本】 有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换...

2018-08-09 10:38:15 268

原创 经典算法---快速排序(javascript)

快排 1.在数据集之中,找一个基准点 2.建立两个数组,分别存储左边和右边的数组 3.利用递归进行下次比较//方式一Array.prototype.quick_sort = function() { var len = this.length; if (len <= 1) return this.slice(0); va...

2018-03-13 17:47:44 351

原创 JS类型化数组视图 - Typed Arrays

在进行音频视频编辑,访问WebSockets的原始数据等,有些时候如果使用JavaScript代码可以快速方便地通过类型化数组来操作原始的二进制数据。 注意:(不要把类型数组与正常数组混淆,无法再类型数组上调用Array.isArray(arr),不是所有可用于正常数组的方法都能被类型数组所支持)类型数组架构:缓冲和视图类型数组是由缓冲与视图两部分组成,一个缓冲(由A...

2018-03-09 08:51:43 765

原创 ES7 详解Async/Await

Async/Await是尚未正式公布的ES7标准新特性。简而言之,就是让你以同步方法的思维编写异步代码。对于前端,异步任务代码的编写经历了callback到现在流行的Promise,最终会进化为Async/Await。虽然这个特性尚未正式发布,但是利用babel polyfill我们已经可以在应用中使用它了。首先了解下async/await的使用场景及规则:在使用 async/...

2018-02-09 11:48:16 907

原创 git for Windows

$ npm install git$ git config –global user.name “My Name”$ git config –global user.email myEmail@example.com$ git init$ git add yourfile$ git status 查看状态$ git commit -m “description”$ git push -

2017-12-27 14:12:33 218

WebPart.ppt

SharePoint Framework (SPFx) 是页面和 Web 部件模型,不仅完全支持客户端 SharePoint 开发,还支持与 SharePoint 数据轻松集成和扩展 Microsoft Teams。借助 SharePoint Framework,可以在自己首选的开发环境中使用新式 Web 技术和工具,以生成从一开始便具有可响应性和移动性的生产体验与应用。

2020-09-24

K8S架构与部署

Kubernetes 是 Google 团队发起并维护的基于 Docker 的开源容器集群管理系统,它不仅支持常见的云平台,而且支持内部数据中心。 建于 Docker 之上的 Kubernetes 可以构建一个容器的调度服务,其目的是让用户透过 Kubernetes 集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是 Container Pod。一个 Pod 由一组工作于同一物理工作节点的容器构成。这些组容器拥有相同的网络命名空间、IP以及存储配额,也可以根据实际情况对每一个 Pod 进行端口映射。此外,Kubernetes 工作节点会由主系统进行管理,节点包含了能够运行 Docker 容器所用到的服务。

2018-11-23

黎曼猜想反证-阿蒂亚

证明黎曼猜想对其他学科具有重要的实用意义,如计算机和网络、物理学,甚至生物神经网络和人工智能。现在,最现实的意义是,如果黎曼猜想被证明,互联网和金融世界的安全,要么遭到毁灭,要么升级和找到更为安全的密钥。

2018-09-28

laravel-5.4中文文档

Laravel 5.4 版本正式发布了!这一版本带来了很多新特性以及对原有功能的提升。 Laravel Dusk Laravel Dusk 是一个端到端(end-to-end)的浏览器测试工具。对于夹杂了 JavaScript 开发的应用,Dusk 可以提供页面交互测试,因此,你可以用 Dusk 测试点击按钮、链接、表单,甚至拖拽功能。 Dusk 利用 ChromeDriver 和 Facebook 的 Php-webdriver 实现的测试功能。它可以和 Selenium 浏览器协同工作,但是由于自带了 ChromeDriver,你可以省去安装 JDK 或 Selenium 了。 Dusk 非常易用,无须设置 Selenium,也无需每次都启动服务。 Laravel Mix Laravel Mix 是 Elixir 的继任者。Mix 抛弃了 Gulp,投入了 webpack 的怀抱。这次改名字就是为了凸显这次变化的重大。 除非你对 Elixir 的设置做了定制,否则迁移到 Mix 轻而易举。

2017-09-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除