我们使用 https://res.wx.qq.com/open/js/jweixin-1.6.2.js 引入提供 jssdk,由于业务需要,配置的 integrity 为
sha384-zEQwxT8x4Y+q7ACXfjDj8p1vaweu8sYaWYkwSKwV7Y2LOAQR9vutnLm6D0JF1+Mr,计算工具两个分别是在线的 https://www.srihash.org/ 和本地 openssl dgst -sha384 -binary jweixin-1.6.2.js | openssl base64 -A,计算结果均为如上值。
但是不同用户在不同时间下浏览器可能报错 integrity 校验不通过:
Failed to find a valid digest in the 'integrity' attribute for resource 'https://res.wx.qq.com/open/js/jweixin-1.6.2.js' with computed SHA-384 integrity 'hpgPP/MzBkrPWEyOdVPsuCov/RzdthQPnaqt2QPUlwJhsYnZJb1OpUXCXrijDrA9'. The resource has been blocked.
深度怀疑该js的CDN资源在各节点有字节或者压缩算法等细微差异,这对需要添加SRI的业务来说是致命的,请排查和修复;