我在 KickAssTorrents.com 上浏览种子,当我访问一个链接时,它以不同的方式编码在 url 中;
例如(IMDb 链接):http://kat.ph/account/confirm/url/aHR0cDovL3d3dy5pbWRiLmNvbS90aXRsZS90dDA0MDE3Mjk=/
现在,当我更改一个字符时,链接中的某些内容会发生变化,我想知道如何在 C# 或 jQuery 中执行此操作?!
最佳答案
在 C# 中:
static public string EncodeTo64(string toEncode) {
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
return returnValue;
}
static public string DecodeFrom64(string encodedData) {
byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
string returnValue = System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
return returnValue;
}
MessageBox.Show(DecodeFrom64("aHR0cDovL3d3dy5pbWRiLmNvbS90aXRsZS90dDA0MDE3Mjk="));
如果字符串 toEncode
包含 ASCII 之外的字符,则使用 System.Text.UTF8Encoding.UTF8.GetBytes(...)
。请注意,在这种情况下,解码 URL 的任何一方都必须能够正确处理这些字符。
另请参阅 the case查看 David Hardin 提到的 =
、+
和 /
是否有任何问题适用于您。或者只使用大卫的 answer .
jQuery: google 'jquery base64 encode'(plugins.jquery.com 站点目前似乎处于离线状态,因此我无法确定)
关于c# - 如何对 URL 进行 BASE64 编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10773339/