这里单独说一下这个md5加密,因为被坑了一下....很郁闷这个现象诡异,不好察觉,太像是因为
网络环境不稳定导致的了,所以一般不会认为是代码的问题,最后发现确实是有问题的.
由于不希望服务器接口裸奔,而springcloud带的,token又臃肿...想着自己弄个,简单一些的,
其实就是,我们自己定义一个规则,根据一系列自己定义的属性字符串,利用这些属性字符串,然后根据这个规则,生成一个混合后的字符串,然后把这个字符串,用md5加密,然后把这些字符串,发给服务器,然后服务器,再根据只有我自己知道的,这个规则,然后把接收到的属性字符串,经过这个规则,计算生成一个新的字符串,然后再对这个字符串md5加密,加密以后,跟发过来的md5密码串对比,如果一样,
那么就证明这个,请求是从我们自己的app发出来的,这样不至于接口裸奔.
但是过了一段时间,发现,有时候会请求不成功,然后再次请求又请求成功了,统计了一下,基本30次请求,有一次请求是失败的.后来才发现...
md5加密后的字符串,跟后台计算md5的字符串,结果,竟然偶尔会不一样....气死..
我单独把这两个md5加密的方法,拿过来:
//1.这个是有问题的,偶尔会有计算md5的时候,计算的不对,//生成的md5,缺少一个0,在字符串首部public static String getMD5StrBack(String str) {byte[] digest = null;try {MessageDigest md5 = MessageDigest.getInstance("md5");digest = md5.digest(str.getBytes("utf-8"));} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (UnsupportedEnc