字符串转base64加密

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串转base64加密相关的知识,希望对你有一定的参考价值。

参考技术A function encode(str)

// 对字符串进行编码

var encode = encodeURI(str);

// 对编码的字符串转化base64

var base64 = btoa(encode);

return base64;



btoa 函数转字符串的时候在小程序端  不支持会报错

支持pc 端和小程序端的可以用下面的方法

function encode(str)

// 对字符串进行编码

var encode = encodeURI(str);

// 对编码的字符串转化base64

var base64 = base64_encode(encode);

return base64;



function base64_encode(str)

  var c1, c2, c3;

  var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";

  var i = 0, len = str.length, string = '';

  while (i < len)

    c1 = str.charCodeAt(i++) & 0xff;

    if (i == len)

      string += base64EncodeChars.charAt(c1 >> 2);

      string += base64EncodeChars.charAt((c1 & 0x3) << 4);

      string += "==";

      break;

   

    c2 = str.charCodeAt(i++);

    if (i == len)

      string += base64EncodeChars.charAt(c1 >> 2);

      string += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));

      string += base64EncodeChars.charAt((c2 & 0xF) << 2);

      string += "=";

      break;

   

    c3 = str.charCodeAt(i++);

    string += base64EncodeChars.charAt(c1 >> 2);

    string += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));

    string += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >> 6));

    string += base64EncodeChars.charAt(c3 & 0x3F)

 

  return string

以上是关于字符串转base64加密的主要内容,如果未能解决你的问题,请参考以下文章

base64 不能加密哪些字符串

c语言如何实现16进制字符串转换为 base64

如何判断一个字符串是不是经过base64加密过

如何将base64加密的字符串转换成image显示在网页上

数据加密

字符串base64加密解密