zoukankan      html  css  js  c++  java
  • ajax提交java后台接收参数出现乱码,url请求出现乱码

    1.现象:

    前台ajax提交查询数据

      $.ajax({
                  url: 'bdmap/xx.action',  
                  data:para,
                  dataType:'json',
                  contentType:"application/x-www-form-urlencoded",
                  success: function(data){
                      if(data.success){                     
                          callback(data.data);
                                     
                      }
           }})
    1. Request URL:http://localhost:8083/bdmap/xx.action?name=%E9%80%9F%E5%BA%A6
    2. Request Method:GET

    解决:这个ajax提交,默认以GET方法提交,提交前默认使用utf8编码格式进行编码,然后tomcat 应用服务器对url解码,默认使用ISO-8859-1格式解码,这时如果url中出现中文字符,编码和解码格式不对应就会出现乱码。

    解决方法一:修改tomcat配置文件server.xml中对url解码的格式,对Connector标签设置URIEncoding="UTF-8",有两处需要修改。

     <Connector port="8083" protocol="HTTP/1.1"        connectionTimeout="20000"      redirectPort="8443"  URIEncoding="UTF-8"/>

    <Connector port="8039" protocol="AJP/1.3" redirectPort="8443"  URIEncoding="UTF-8"/>

    解决方法二:前端使用post方法提交数据,ajax使用 type:‘POST’ 。

  • 相关阅读:
    MD5 加密 以及 加盐加密
    github--新手使用错误分析
    iOS开发UI篇—UITabBarController简单介绍
    Xcode 那些简单实用的插件推荐
    app 转caf 音频 代码
    关于block 用法
    iOS 之播放系统声音
    ios如何实现推送通知
    Centos7安装Redis
    SpringCloud-Zuul网关
  • 原文地址:https://www.cnblogs.com/xiaozhuyuan/p/7262517.html
Copyright © 2011-2022 走看看