request.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. var debugLocal = true
  2. //tokenList = ['8bc766ae05120ad091e8e52c29e23c1e']
  3. function arrayBufferToBase64(bytes) {
  4. var binary = '';
  5. var len = bytes.byteLength;
  6. for (var i = 0; i < len; i++) {
  7. binary += String.fromCharCode(bytes[i]);
  8. }
  9. return window.btoa(binary);
  10. }
  11. function hexStringToUint8Array(hexString) {
  12. if (hexString.length % 2 !== 0) {
  13. throw "Invalid hexString";
  14. }/*from w w w. j av a 2s . c o m*/
  15. var arrayBuffer = new Uint8Array(hexString.length / 2);
  16. for (var i = 0; i < hexString.length; i += 2) {
  17. var byteValue = parseInt(hexString.substr(i, 2), 16);
  18. if (isNaN(byteValue)) {
  19. throw "Invalid hexString";
  20. }
  21. arrayBuffer[i / 2] = byteValue;
  22. }
  23. return arrayBuffer;
  24. }
  25. var decrypt = function (key, iv, crypted) {
  26. key = CryptoJS.enc.Utf8.parse("sBWBAyOaGqkuEhCw"); //十六位十六进制数作为密钥
  27. iv = CryptoJS.enc.Utf8.parse('sBWBAyOaGqkuEhCw'); //十六位十六进制数作为密钥偏移量
  28. encrypted2 = arrayBufferToBase64(crypted)
  29. var decrypted = CryptoJS.AES.decrypt(encrypted2, key, {
  30. iv: iv,
  31. mode: CryptoJS.mode.CBC,
  32. padding: CryptoJS.pad.Pkcs7
  33. });
  34. var originalText = decrypted.toString();
  35. originalText = hexStringToUint8Array(originalText)
  36. console.log("originalText", originalText)
  37. return originalText
  38. };
  39. function getQueryVariable(variable) {
  40. var query = window.location.search.substring(1);
  41. var vars = query.split("&");
  42. for (var i = 0; i < vars.length; i++) {
  43. var pair = vars[i].split("=");
  44. if (pair[0] == variable) { return pair[1]; }
  45. }
  46. return (false);
  47. }