jquery 跨域POST信息问题解决方案

来源:互联网 发布:星际穿越量子数据 编辑:程序博客网 时间:2024/05/16 09:23

问题描述 :

近期在整合一些系统的时候遇到一些问题:

  现在有系统A,B,C 。 登录界面在A系统上,现在在A系统上添加三个按钮,将一个表单,根据按钮的不同提交到不同项目的Action上。

 

 1.方案一 jquery POST 利用Ajax验证用户是否存在并且根据验证结果跳转到用户登录成功的页面

    项目A,B,C在同一台服务器上部署,但是端口号不同

 项目A端口号 80 ,B  8080 ,C 8081

     var paras =  $('#loginid').serialize();

 $.post(globalURL,paras

   function (data, textStatus){
      var retValue = unescape(data.returnValue);
   
      if('success'==retValue){
           window.location= http://192.168.1.101:8080/”+ "pane_srpmis/true";";
      }else if('delegate'==retValue){
           window.location= “http://192.168.1.101:8080/”+ "pane_srpmis/true";
      }
      else{
         alert(retValue);
                closeWin();
      }

    这种方法在IE10 浏览器上,360 ,搜狗浏览器上都测试成功。

但是在firefox25.01上测试失败。

经过找度娘查询:发现原来是不同域之间的不能这样访问。

        后来解决方案是  :

      function save()
     {   
         document.form1.action="http://localhost:8080/test2/index.jsp";
         document.form1.submit();
     }

        

 然后在test2的index.jsp页面中设置隐藏一个Form 然后根据onload 加载事件触发后将表单提交到B系统的所需要的页面。

0 0
原创粉丝点击