1

我从这里使用这个编码/解码 javascript 64bit http://www.webtoolkit.info/javascript-base64.html

所以这里是scanrio:我正在从JavaScript 重定向到一个新的aspx 页面,并且在page_load 上我正在读取QueryString id。

一切正常,但问题是,如果我想在代码隐藏的 asp.net 中编码/解码,我该怎么办?

我打算在从 .JS 重定向到页面之前进行编码,但是我将如何读取后面的 asp.net 代码中的编码?

4

1 回答 1

1

一切正常,但问题是,如果我想在代码隐藏的 asp.net 中编码/解码,我该怎么办?

在后面的代码中使用以下方法进行编码和解码。

static public string DecodeFrom64(string encodedData)
{
    byte[] encodedDataAsBytes
        = System.Convert.FromBase64String(encodedData);
    string returnValue =
        System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
    return returnValue;
}

static public string EncodeTo64(string toEncode)
{
    byte[] toEncodeAsBytes
            = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
    string returnValue
            = System.Convert.ToBase64String(toEncodeAsBytes);
    return returnValue;
}

我打算在从 .JS 重定向到页面之前进行编码,但是我将如何读取后面的 asp.net 代码中的编码?

您可以调用DecodeFrom64方法来使用 JS 解码编码的文本。

测试 :

 input = "Abu Hamzah"
 JS encoded text = "QWJ1IEhhbXphaA=="

DecodeFrom64("QWJ1IEhhbXphaA==")结果是"Abu Hamzah"EncodeTo64("Abu Hamzah")结果"QWJ1IEhhbXphaA=="如预期。

编辑:

添加base64编码解码java脚本

<script type="text/javascript" src="/js/webtoolkit.base64.js">

你可以从这里下载它http://www.webtoolkit.info/djs/webtoolkit.base64.js

在您的 javascript 中,您可以如下调用此方法

window.location.href="mypage.aspx?id=" + Base64.encode('Test');

如果你想从服务器端解码这个查询字符串参数,那么你可以使用DecodeFrom64方法

于 2012-04-20T04:31:27.217 回答