Wesley13 Wesley13
3年前
java与js进行字节加密通信
java端使用基于netty的websocket,java端怎么发送和接收字节数据包在此不做赘述,本文重点是js前端websocket怎么利用CryptoJS对字节数据进行加解密(jswebsocket在此也不做赘述)。一般我们使用CryptoJS进行加解密都是基于字符串的,网上很难找到一篇js对字节数据进行加解密,当然我下面的内容也是借鉴的网上一篇博
徐小夕 徐小夕
3年前
深入浅出node中间件原理
前言中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。在NodeJS中,中间件主要是指封装http请求细节处理的方法。我们都知道在http请求中往往会涉及很多动作,如下:IP筛选查询字符串传递请求体解析cookie信息处理
Aimerl0 Aimerl0
3年前
每日一题(六)
写在前面冲冲冲!ASIS2019Unicornshop进去是一个买独角兽的页面,但是找不到自己有多少钱???前三个独角兽很便宜,就几块钱,肯定不是flag,买最贵的独角兽时,回显了一句Onlyonechar(?)allowed!,只能输入一个字符,然而最贵的独角兽要1337块回显报错源码中有两句注释因为那句Westillhave
Stella981 Stella981
3年前
C#在与java对接时候的UrlEncode的坑
最近与建行接口做对接和与一家短信运营商做对接时候遇到了这个坑在java中对UrlEncode时候哪些url非安全字符被转为%数字和大写字幕组合,比如:zhangsan/d会被转为 zhangsan%2Fd ,而在C中确被转为 zhangsan%2fd 。注意大小写的差异然后就导致了各种加密验签无法通过的情况。于是就自己在C原来的Url
Stella981 Stella981
3年前
ClickHouse中的低基数字段优化
在ClickHouse中,String字符串类型相比其他数据类型而言,一个显著的差异是String类型的大小是不固定的。所以除了常规的列字段压缩手段之外,还延伸出了一些额外的优化思路。在《ClickHouse原理解析与应用实践》(你没看错,这是最终敲定的书名)这本书的_数据定义_章节中,曾提过在一些场合可以使用Enum枚举类型代替Stri
Stella981 Stella981
3年前
JFinal的Model进行json反序列化
在使用JFinal进行开发时,我们可能会需要解决这样的问题:Model进行json的序列化与反序列化。官方已经提供了序列化的方法Model.toJson()非常方便,反序列化就得自己实现一下了。之前我一直都是把Model序列化成的json字符串,反序列化成map,然后再调用Model.setAttrs(map)。这样就有类型转换问题,最后反序列化得到
Wesley13 Wesley13
3年前
Java单例模式
什么是单例模式  单例模式是在程序中,一个类保证只有一个实例,并提供统一的访问入口。为什么要用单例模式节省内存节省计算如对象实例中的一样的,那就不用每次都创建一个对象方便管理因为单例提供一个统一的访问入口,不需要创建N多个对象,很多工具类都用了单例实现,如日志、字符串工具类
Stella981 Stella981
3年前
JWT 在 Web 服务中进行无状态授权的原理
JWT指的是JSONWebTokens,是一串数据加密后生成的Token字符串,通过以下方式服务器端可以判定客户端的身份。1、客户端用户userA使用用户名密码登录服务器2、服务器返回给用户数据和一串Token3、userA再次请求数据带上Token,而不用再次输入用户名密码4、服务器解密Token,拿出其中标识用户
Wesley13 Wesley13
3年前
java解析JavaScript片段
前几天帮某个人抓取某电商网站商品属性的,得到页面后需要解析一个<script内的代码获得其中一个json对象的属性,开始是想字符串截取呢,后来感觉不怎么好,就换成用java解析script了,感觉还行,其中有几个坑,在这里记录下,对于一段js代码,java在解析时,需要补齐其中的空间变量,比如varwindow{}; 还有js中调用的函数
Wesley13 Wesley13
3年前
Mysql高性能优化规范(一):设计规范
一、数据库命令规范1.所有数据库对象名称必须使用小写字母并用下划线分割;2.所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来);3.数据库对象的命名要能做到见名识意,并且最好不要超过32个字符;4.临时库表必须以t