Suoyi丶O 2017-09-14 03:22 采纳率: 50%
浏览 2197
已采纳

Java如何实现跨域传参

现在有两个前端项目 在其中一个项目中 使用url引用了另外一个项目的页面,
两个项目共用一个后台 ,后台使用的spring mvc,现在我需要把我登录的用户ID传到
另外一个项目上,使用的session存储的用户信息。但是拿不到,因为两个不是同一个项目请求不同。求解。大神们help me....

  • 写回答

16条回答 默认 最新

  • qq_27373459 2017-09-14 03:41
    关注

    看我的一篇文章,在过滤器设置允许跨域即可。
    http://blog.csdn.net/qq_27373459/article/details/77099207

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • Suoyi丶O 2017-09-14 03:26
    关注

    大神提供下思路或者解决方案,100C奉上。。

    评论
  • IAmObject 2017-09-14 03:32
    关注

    跨域一直都是一个比较头疼的问题。。。。

    评论
  • 卖太妃糖的古尔丹 2017-09-14 03:33
    关注

    厄,你可以在后台重定向一下,将第一个项目的用户ID,发送给另一个项目,然后在另一个项目里接收处理一下,对于后台来说,不管你是哪个项目,都只是一个请求,http是无状态链接啊

    评论
  • IAmObject 2017-09-14 03:34
    关注

    你可以用通信的方式两个项目之间互传这些,比如socket、 mq等等,这边登录成功了把用户信息给另外的发过去,然后执行你想要做的事情

    评论
  • 我还不够强 2017-09-14 03:37
    关注
    评论
  • 花下泥 2017-09-14 03:43
    关注

    url?userId=xxxx;这样传参过去 结果还是拿不到

     针对这种情况你可以用js来获取参数
    
     function getQueryString(name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
        var r = window.location.search.substr(1).match(reg);
        if (r != null) return unescape(r[2]); return null;
    }
    
    评论
  • 道亦无名 博客专家认证 2017-09-14 04:52
    关注

    这个传参 用http 协议试试吧 看看行不行

    评论
  • MLi_hb 2017-09-14 05:04
    关注

    可以使用ajax,然后在ajax基础上增加跨域请求,具体的你可以去搜jsonp,我前几天刚好用了一下,走通了

    评论
  • cloudyzhao 2017-09-14 05:08
    关注

    说说ajax 跨域、说说JSON和JSONP

    评论
  • cloudyzhao 2017-09-14 05:08
    关注
    评论
  • 卓成俊 2017-09-14 05:22
    关注

    这个问题我曾经遇到过,后来我的解决是这样的,使用 缓存共享能解决图片说明

    评论
  • MikeDDT009 2017-09-14 05:43
    关注

    我觉得其实方法也算有吧,我自己是这几个思路:
    1.一种是后台里面自己设置一个公共类(缓存,使用键值对确保唯一),只要后台任何一个地方都能访问它,那么不管哪个都行,这种的话其实自带就可以了(applicationg的作用域范围:页面《请求《session《application),不过这个访问权限一般不会用,所以无所谓。
    方法1的话其实用一个第三方的缓存也是可以的,当然本质其实session也可以,这里的问题是在于如何取得通一个session,这个可以通过写入session的唯一标识符到cookie里面也能做到,只是名字一样
    2.通过URL传参也是可以的,本质也和1差不了多少。

    其实这种的思路在于,是哪个对象?怎么找到这个对象?谁持有这个对象?

    评论
  • 聖手求生 2017-09-14 06:57
    关注

    $.ajax({

           url:"http://localhost:8080/xxx.do",
           type : "post",  
           dataType : "jsonp",//数据类型为jsonp  ,一定得是jsonp
           jsonp: "callback",//服务端用于接收callback调用的function名的参数  
           success: function(data){
         $.alert('数据加载成功');
            },
            error: function(){
             $.alert('数据加载失败');
           }
            });
            然后后台可返回map数据或json格式或String格式的数据,但一定得return callback( +你返回的数据+ )
    

    不懂再百度jsonp的跨域方法和注意方式

    评论
  • 聖手求生 2017-09-14 06:59
    关注
                $(document).ready(function(){
                $.ajax({
                    url:"http://localhost:8080/xxx.do", //你的url
                    type : "post",  
                    dataType : "jsonp",//数据类型为jsonp  ,一定得是jsonp
                    jsonp: "callback",//服务端用于接收callback调用的function名的参数  
                    success: function(data){
                $.alert('数据加载成功');
                        },
                        error: function(){
                        $.alert('数据加载失败');
                    }
                        });
                });
    

    这应该够清楚了,不懂百度jsonp

    评论
  • javaee_loser 2017-09-15 06:36
    关注

    比较好用的就是jsonp

    评论
查看更多回答(15条)

报告相同问题?

悬赏问题

  • ¥15 stm32f103zet6 串口5无法收发数据
  • ¥15 关于C语言使用线程队列实现多线程并发
  • ¥15 这个运行,错误在哪里呀,大家看看吧,教导我
  • ¥15 advanceinstaller对话框设置
  • ¥100 正常上网,内部网页无法打开
  • ¥15 组件库引入并使用在若依框架未展示
  • ¥149 关于#使用python 的Flash Echarts+ajax+mysql动态数据实现饼图#的问题,请各位专家解答!
  • ¥15 RichTextBox中追加文本时报错
  • ¥15 关于c语言的学习问题
  • ¥15 activity升级到flowable工作流act_ge_bytearray的草稿json数据复制到act_de_model 的model_editor_json的脚本