javascript - 将加密值分配到会话存储中
问题描述
我正在尝试将加密值分配到 .cshtml 文件中的会话存储中。但我不能。每次我都会遇到不同的错误。我得到的错误: Uncaught SyntaxError: Unexpected token ')' , Uncaught SyntaxError: Invalid left-hand side in assignment
<script type="text/javascript">
@{
string createApplicationRequestPKey =Request.QueryString["cpk"];
if(createApplicationRequestPKey != null)
{
@:sessionStorage.setItem('CreateApplicationRequestPKey', @createApplicationRequestPKey);
@:location.href = '/';
}
}</script>
示例请求:url?cpk=U2FsdGVkX1+S3rsDcNeHuP5g6LokgGx9/xV1QcSVR+g=
解决方案
尝试使用 encodeURI 函数javascript
:
string createApplicationRequestPKey = encodeURI(Request.QueryString["cpk"]);
如果您c#
在服务器端使用 base64 或 urlencode:
public static string Base64Encode(string plainText) {
var plainTextBytes = System.Text.Encoding.UTF8.GetBytes(plainText);
return System.Convert.ToBase64String(plainTextBytes);
}
public static string Base64Decode(string base64EncodedData) {
var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
}
string encoded = System.Web.HttpUtility.UrlEncode(cpk);
推荐阅读
- javascript - 如何修复检查相同随机数组值的函数
- linux - 如何匹配来自两个目录的部分匹配文件名并在找到的内容上执行命令
- javascript - 如何防止多个http请求同时触发
- python - 如何在 django 的重定向请求中传入模型
- conda - 如何在没有互联网连接的服务器上“conda install”?
- ruby-on-rails - 如何同时使用活动记录更新列?
- typescript - 如何通过 Ionic 4 选项卡按钮传递参数
- postgresql - 在 psql shell 中所做的更改不会显示在 Datagrip 会话中
- java - 当试图创建一个倒置的 Mandelbrot-set 时,它会被扭曲
- java - RecyclerView 中的分组开关