主要解决:前后端分离,通过ajax请求服务器,后端实现负载均衡,实现跨域访问session共享问题。
1、在ajax请求中添加:dataType:"jsonp"和jsonpCallback:"jsonpCallback"
$.ajax({
url: URL_GET_API,
type: "POST",
data: _param,
dataType:"jsonp",
jsonpCallback:"jsonpCallback",
success: function(data){
_callback(data, _obj);
},
failure: function(){
_data = {};
_data[JSON_KEY_CODE] = RESPOND_CODE_AJAX_FAILURE;
_callback(_data, _obj);
}
});
2、服务器在接受请求处理完业务时将jsonpCallback原样返回
3、配置Tomcat,在$Tomcate_home/conf/context.xml中添加,其中xxx.com为顶级域名
<Context useHttpOnly="true" sessionCookiePath="/" sessionCookieDomain="xxx.com"/>
在$Tomcate_home/conf/server.xml中将下列注释打开
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
4、配置应用,在应用/WEN-INF/web.xml中增加<distributable/>
5、在应用/META-INF/中添加配置文件contxt.xml,文件内容为
<?xml version="1.0" encoding="UTF-8"?>
<Context useHttpOnly="true" sessionCookiePath="/" sessionCookieDomain="xxx.com"/>