var param = encodeURI(param);
$.ajax({
url: 'url',
methodtype: "POST",
async: false,
timeout: 60000,
contentType: "application/json",
data: {'param':param},
success: function(data) {
},
error: function(data) {
}
});后台java.net.URLDecoder进行解码
编解码工具
import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;import org.apache.commons.codec.DecoderException;import org.apache.commons.codec.binary.Base;import org.apache.commons.codec.binary.Hex;import org.apache.commons.lang3.StringEscapeUtils;/**
* 封装各种格式的编码解码工具类.
* 1.Commons-Codec的 hex/base 编码
* 2.自制的base62 编码
* 3.Commons-Lang的xml/html escape
* 4.JDK提供的URLEncoder
*
*/public class Encodes {
private static final String DEFAULT_URL_ENCODING = "UTF-8"; private static final char[] BASE62 = "01234567ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".toCharArray(); /**
* Hex编码.
*/
public static String encodeHex(byte[] input) { return new String(Hex.encodeHex(input));
} /**
* Hex解码.
*/
public static byte[] decodeHex(String input) { try { return Hex.decodeHex(input.toCharArray());
} catch (DecoderException e) { throw Exceptions.unchecked(e);
}
} /**
* Base编码.
*/
public static String encodeBase(byte[] input) { return new String(Base.encodeBase(input));
} /**
* Base编码.
*/
public static String encodeBase(String input) { try { return new String(Base.encodeBase(input.getBytes(DEFAULT_URL_ENCODING)));
} catch (UnsupportedEncodingException e) { return "";
}
}// /**// * Base编码, URL安全(将Base中的URL非法字符'+'和'/'转为'-'和'_', 见RFC3548).// */// public static String encodeUrlSafeBase(byte[] input) {// return Base.encodeBaseURLSafe(input);// }
/**
* Base解码.
*/
public static byte[] decodeBase(String input) { return Base.decodeBase(input.getBytes());
} /**
* Base解码.
*/
public static String decodeBaseString(String input) { try { return new String(Base.decodeBase(input.getBytes()), DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) { return "";
}
} /**
* Base62编码。
*/
public static String encodeBase62(byte[] input) { char[] chars = new char[input.length]; for (int i = 0; i < input.length; i++) {
chars[i] = BASE62[((input[i] & 0xFF) % BASE62.length)];
} return new String(chars);
} /**
* Html 转码. 例如将 < 转成 <
*/
public static String escapeHtml(String html) { return StringEscapeUtils.escapeHtml4(html);
} /**
* Html 解码.
*/
public static String unescapeHtml(String htmlEscaped) { return StringEscapeUtils.unescapeHtml4(htmlEscaped);
} /**
* Xml 转码.
*/
public static String escapeXml(String xml) { return StringEscapeUtils.escapeXml10(xml);
} /**
* Xml 解码.
*/
public static String unescapeXml(String xmlEscaped) { return StringEscapeUtils.unescapeXml(xmlEscaped);
} /**
* URL 编码, Encode默认为UTF-8.
*/
public static String urlEncode(String part) { try { return URLEncoder.encode(part, DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) { throw Exceptions.unchecked(e);
}
} /**
* URL 解码, Encode默认为UTF-8.
*/
public static String urlDecode(String part) { try { return URLDecoder.decode(part, DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) { throw Exceptions.unchecked(e);
}
}
}
Copyright © 2019- baoquwan.com 版权所有
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务