JSFiddle - React, Tailwind, and code Playground
HTML
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/aes.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/components/enc-base64-min.js"></script>
<div id='customer_data'></div>
<br/>
<div id='encrypt'></div>
<br/>
<div id='href'></div>
JavaScript
function Encrypt(secret_key, data){
var key = CryptoJS.enc.Utf8.parse(secret_key.substr(0, 16));
var iv = CryptoJS.enc.Utf8.parse(secret_key.substr(16, 16));
var srcs = CryptoJS.enc.Utf8.parse(data);
var encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv,mode:CryptoJS.mode.CBC});
return encrypted.toString().replace(/\+/g, '-').replace(/\//g, '_');
}
$(document).ready(function(){
// 用户信息JSON
var customer_data = JSON.stringify({"uid":"[email protected]","type":"email","name":"test"});
// 接入密钥
var secret_key = 'F789BF878B624AE3BA6A99B33BBCCFF6';
// 店铺主域名
var shop_domain = 'youhaosuda.com';
var encrypt_data = Encrypt(secret_key, customer_data);
var redirect_url = 'http://' + shop_domain + '/account/multipass/login/' + encrypt_data;
$('#customer_data').html(customer_data);
$('#encrypt').html(encrypt_data);
$('#href').html(redirect_url);
});