我一直在寻找 pako 将我的 base64 更改为 JSON,我可以完美地工作。但是我怎样才能扭转它呢?
我使用了在线 JSON 到 base64,但结果与我最初输入的原始 base64 不同。
我在此片段的评论中留下了我的 base64 样本及其输出(也已评论)。我可以用 pako 把它恢复到原来的状态吗?
//eNqrVsoozcnxdFGyMjQwtjQwN9dRSq0oSC0qcSrNzElRskpLzClO1VEqT00syM8rVrKKNjUwMInVUSouSE3OBMpBRCxBItmZYAWGBgZmIINiawE68xw1
//{"hullID":1039077,"expertBuild":false,"weapons":[5004],"specials":[5009],"skins":[10069077]}
submit.onclick = function(){
// Get some base64
var b64Data = document.getElementById("KixCode").value;;
// Decode base64 (convert ascii to binary)
var strData = atob(b64Data);
// Convert binary string to character-number array
var charData = strData.split('').map(function(x){return x.charCodeAt(0);});
// Turn number array into byte-array
var binData = new Uint8Array(charData);
// Pako magic
var data = pako.inflate(binData);
// Convert gunzipped byteArray back to ascii string:
var strData = String.fromCharCode.apply(null, new Uint16Array(data));
// Output
var KixCode = strData
document.getElementById("output").innerText = KixCode;
}
<div>
<label for="KixCode">Kix Code: </label><input id="KixCode" type="text" value="eNqrVsoozcnxdFGyMjQwtjQwN9dRSq0oSC0qcSrNzElRskpLzClO1VEqT00syM8rVrKKNjUwMInVUSouSE3OBMpBRCxBItmZYAWGBgZmIINiawE68xw1"/><br /><br />
<button id="submit">Submit</button>
</div>
<p>
<span id="output"></span>
</p>
<script src="https://rawgit.com/nodeca/pako/master/dist/pako.js"></script>