test_img.html 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <html>
  2. <head>
  3. </head>
  4. <script src="dart_js.js"></script>
  5. <script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></script>
  6. <img id="img_render" width="400" height="400"/>
  7. <script>
  8. function uint8ArrayToArray(uint8Array) {
  9. var array = [];
  10. for (var i = 0; i < uint8Array.byteLength; i++) {
  11. array[i] = uint8Array[i];
  12. }
  13. return array;
  14. }
  15. function bin2String(array) {
  16. var result = "";
  17. for (var i = 0; i < array.length; i++) {
  18. result += String.fromCharCode(array[i]);
  19. }
  20. return result;
  21. }
  22. let key = "c2AkIbxQLQSToEZQ"
  23. async function test() {
  24. let imgUrl = 'https://video-up.oss-accelerate.aliyuncs.com/2021123yeoiBVkASemH.jpg'
  25. let { data } = await axios.get(imgUrl, { responseType: 'blob' })
  26. var start = performance.now();
  27. let buf = await data.arrayBuffer();
  28. data = uint8ArrayToArray(new Uint8Array(buf))
  29. let decData = dx_decrypt(data, key).o;
  30. var end = performance.now();
  31. console.log('cost is', `${end - start}ms`)
  32. let imgData = bin2String(decData);
  33. let imgDataUrl = 'data:image/jpeg;base64,' + btoa(imgData)
  34. document.getElementById("img_render").src = imgDataUrl;
  35. }
  36. test()
  37. </script>
  38. </html>