在Javascript中加密URL参数和使用C#解密的问题 [英] Issue with Encrypting URL parameter in Javascript and Decrypting with C#
问题描述
我几乎查看了网上有关如何在Javascript中加密和编码网址参数的每个示例并使用C#解码和解密,但没有一个适合我。
I have viewed almost every sample on the web about how to encrypt and encode a URL parameter in Javascript and decode and decrypt using C#, but none are working for me.
https://forums.asp.net/t/2069885.aspx?Encrypt+in+JavaScript +和+ Decrypt + in + C +
https://www.codeproject.com/Articles/11479/RSA-Interoperability-between-JavaScript-and-RSACry
我收到如下错误:
Base-64字符数组或字符串的长度无效。
Invalid length for a Base-64 char array or string.
或
这是我的Javascript:
Here is my Javascript:
这是我的C#:
推荐答案
>   var encodedValue = btoa(unescape(encodeURIComponent(encrypted.toString())));
为什么要调用encodeURIComponent和unescape? 只要您使用Base64编码,就无需转义任何内容。
您是否将字符串作为网址组件传递? 请记住,3/4的Base64字符串具有等号。那些在最后解包的重要
。
这篇关于在Javascript中加密URL参数和使用C#解密的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!