下面是我的跨域方式:
a工程:middle.jsp
<body>   
    
    <%
     Cookie[] cs=request.getCookies();
Cookie sCookie=null;
String user=null;
if(cs!=null){
for(int i=0;i<cs.length;i++){
sCookie=cs[i];  
if(sCookie!=null){
       if(("_USER").equals(sCookie.getName())){     
          user=sCookie.getValue();
       }
    }
    }}
String backurl=request.getParameter("backurl");
     response.addHeader("Cache-Control","no-cache");
     response.addHeader("Expires","Thu,01 Jan 1970 00:00:01 GMT");
     URLEncoder.encode(ulk,"utf-8");
     %>
     <script src="http://www.b.com/setCookie.jsp?user=<%=user %>"> </script>
     
     <script type="text/javascript">
      window.location="<%=backurl%>";
     </script>
  </body>b工程:setCookie.jsp
<% 
response.setHeader("P3P","CP=\"NON DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa HISa TELa OTPa OUR UNRa IND UNI COM NAV INT DEM CNT PRE LOC\"");
    String user= request.getParameter("user");
     user=URLEncoder.encode(URLDecoder.decode(user, "utf-8"),"utf-8");
   
     Cookie _USER=new Cookie("_USER",user);
     _cookie.setPath("/");
     _cookie.setDomain(".b.com");
     response.addCookie(_USER);
 
    %>
通过这种方式是实现了在b.com 中取到_user这个cookie,问题是我在a工程中多了一步加载middle.jsp页面,然后才能跳转到backurl的页面。这样是极不友好的,我用ajax直接请求middle.jsp 无法在b中获取的cookie。同理我退出的时候也用这种方式,页面又要重新加载,用户体验极佳。
求更好的解决cookie跨域的方案呢?求大侠们指点迷津啊!!!!! webjavap3p跨域cookie