Home > Web Front-end > JS Tutorial > How to solve the Chinese garbled code of AJAX POST data

How to solve the Chinese garbled code of AJAX POST data

小云云
Release: 2018-03-05 16:56:03
Original
2459 people have browsed it

This article mainly shares with you how to solve the Chinese garbled code of AJAX POST data. The front-end uses encodeURI for encoding. I hope it can help everyone.

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) {

        }
    });
Copy after login

Backend java.net.URLDecoder for decoding
Encoding and decoding tools

import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;import org.apache.commons.codec.DecoderException;import org.apache.commons.codec.binary.Base64;import org.apache.commons.codec.binary.Hex;import org.apache.commons.lang3.StringEscapeUtils;/**
 * 封装各种格式的编码解码工具类.
 * 1.Commons-Codec的 hex/base64 编码
 * 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 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".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);
        }
    }    /**
     * Base64编码.
     */
    public static String encodeBase64(byte[] input) {        return new String(Base64.encodeBase64(input));
    }    /**
     * Base64编码.
     */
    public static String encodeBase64(String input) {        try {            return new String(Base64.encodeBase64(input.getBytes(DEFAULT_URL_ENCODING)));
        } catch (UnsupportedEncodingException e) {            return "";
        }
    }//  /**//   * Base64编码, URL安全(将Base64中的URL非法字符'+'和'/'转为'-'和'_', 见RFC3548).//   *///  public static String encodeUrlSafeBase64(byte[] input) {//      return Base64.encodeBase64URLSafe(input);//  }

    /**
     * Base64解码.
     */
    public static byte[] decodeBase64(String input) {        return Base64.decodeBase64(input.getBytes());
    }    /**
     * Base64解码.
     */
    public static String decodeBase64String(String input) {        try {            return new String(Base64.decodeBase64(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 转码.  例如将 < 转成 &lt
     */
    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);
        }
    }
}
Copy after login

Related recommendations:

Use the php curl_setopt() function to capture web pages A simple example with POST data

PHP implementation code for converting POST data into string

Three methods for php to obtain POST data Detailed explanation of examples

The above is the detailed content of How to solve the Chinese garbled code of AJAX POST data. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template