提交表单onclick时转义javascript中的值

Omn*_*ent 1 javascript java jsp

当用户单击onclick事件时,我正在发送加密的敏感数据。有时此加密数据包含一个加号(+)当我在服务器上检索到此请求变量时,它将+转换为空白。这将导致解密失败。

例:

xrUxHtYpO2Yu3Z31ve+KNA==
Run Code Online (Sandbox Code Playgroud)

转换为:

xrUxHtYpO2Yu3Z31ve KNA==
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以转义字符串,以便按原样发送?

Poi*_*nty 5

您要查找的函数是“ encodeURIComponent()”:

var encoded = encodeURIComponent("nasty string");
Run Code Online (Sandbox Code Playgroud)

在服务器端,您根本不需要任何代码。URL编码几乎肯定会被您的Web框架隐式取消。(编辑-啊,如果您使用的是Java / JSP Web框架,那么您绝对不必在服务器端做任何花哨的事情。)