extjs框架get请求中文乱码

解决方法1:后台服务器和UI的编码格式都设置为UTF-8

后台服务器设置:Tomcat的server.xml文件设置URIEncoding="UTF-8"

UI编码格式:JSP(welcome.jsp)设置

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>

index.html设置编码格式:(解决标题中文乱码问题)

<%@page pageEncoding="UTF-8"%>

<!DOCTYPE HTML>

<html manifest="">


(2)解决方法2:设置获取数据的方式为POST(method为post)

a. 设置Store的配置,Proxy的配置中设置actionMethods,指定read为POST,同时Controller中RequestMapping将GET修改成method = RequestMethod.POST

查看proxy中的ajax:http://10.108.4.220:8080/extjs-api-classic-6.0.0/#!/api/Ext.data.proxy.Proxy,进入后可以看到Ext.data.proxy.Ajax 中的config中有actionMethod

proxy : {

        type : 'ajax',

        url :'ess/violation/pagingQuery',

        actionMethods : {

          read : 'POST'

        },

        reader : {

          type : 'json',

          rootProperty : 'data',

          totalProperty : 'resultCount'

        },

        extraParams : {

          personId : ''

        }

      }

后台Controller.java中@RequestMapping 注解的method由GET修改成POST

  @ResponseBody

  @RequestMapping(value ="/findAllMenusTreeByAccount", method = RequestMethod.POST)

b.Ajax直接请求数据的话,可以直接指定method为post,Controller中也要修改成POST。

猜你喜欢

转载自blog.csdn.net/rixingbeioul46364/article/details/73504051