日期:2014-05-16  浏览次数:20514 次

url如何加密,我做的是静态页面,a页面把视频地址传递给B页面,穿过去的地址如何加密,然后在B页面里解密,播放。谢谢!!!!
如题!

------解决方案--------------------
基本上没什么用了
------解决方案--------------------
传递
url = "0068007400740070003a002f002f007700770077002e003100360033002e0063006f006d ";
表示http://www.163.com
b页面解码:
function Decode(str)
{
return unescape(str.replace(/[\da-f]{4}/ig, "%u$& "));
}
Decode(url);


a页面的编码函数:
function Encode(str)
{
return str.length ? str.charCodeAt(0).toString(16).replace(/^[\da-f]{2}$/i, "00$& ").concat(arguments.callee(str.slice(1))) : " ";
}
var url = Encode( "http://www.163.com ");
// 0068007400740070003a002f002f007700770077002e003100360033002e0063006f006d


// 因为这些都是在客户端进行的操作,所以基本上是没法做到真正保密的
------解决方案--------------------
静态页面加密??? 基本上是没法做到真正保密的哦,给你个base64加密解密的方法
你自己提出来用吧
<html>
<head>
<title> base64 Encoding/Decoding </title>
</head>

<script type= "text/javascript "> <!--

var keyStr = "ABCDEFGHIJKLMNOP " +
"QRSTUVWXYZabcdef " +
"ghijklmnopqrstuv " +
"wxyz0123456789+/ " +
"= ";

function encode64(input) {
input = escape(input);
var output = " ";
var chr1, chr2, chr3 = " ";
var enc1, enc2, enc3, enc4 = " ";
var i = 0;

do {
chr1 = input.charCodeAt(i++);
chr2 = input.charCodeAt(i++);
chr3 = input.charCodeAt(i++);

enc1 = chr1 > > 2;
enc2 = ((chr1 & 3) < < 4) | (chr2 > > 4);
enc3 = ((chr2 & 15) < < 2) | (chr3 > > 6);
enc4 = chr3 & 63;

if (isNaN(chr2)) {
enc3 = enc4 = 64;
} else if (isNaN(chr3)) {
enc4 = 64;
}

output = output +
keyStr.charAt(enc1) +
keyStr.charAt(enc2) +
keyStr.charAt(enc3) +
keyStr.charAt(enc4);
chr1 = chr2 = chr3 = " ";
enc1 = enc2 = enc3 = enc4 = " ";
} while (i < input.length);

return output;
}

function decode64(input) {
var output = " ";
var chr1, chr2, chr3 = " ";
var enc1, enc2, enc3, enc4 = " ";
var i = 0;

// remove all characters that are not A-Z, a-z, 0-9, +, /, or =
var base64test = /[^A-Za-z0-9\+\/\=]/g;
if (base64test.exec(input)) {
alert( "There were invalid base64 characters in the input text.\n " +
"Valid base64 characters are A-Z, a-z, 0-9, '+ ', '/ ', and '= '\n " +
"Expect errors in decoding. ");
}
input = input.replace(/[^A-Za-z0-9\+\/\=]/g, " ");

do {
enc1 = keyStr.indexOf(input.charAt(i++));
enc2 = keyStr.indexOf(input.charAt(i++));
enc3 = keyStr.indexOf(input.charAt(i++));
enc4 = keyStr.indexOf(input.charAt(i++));

chr1 = (enc1 < < 2) | (enc2 > > 4);
chr2 = ((enc2 & 15) < <