不知不觉上五角了,呵呵,感觉Java版块的活跃程度欠缺,或许是牛人们都忙活去了吧,学习J2EE的哥们,每天都要不断的学习,呵呵,感觉还是学微软的东东好,不用这么拼命的!切入正题吧,偶遇一跨域取值的问题良久未解决,题意如下:A域名下有一登陆入口,输入用户名和密码即可登陆(Post方法提交,Session保存会话)现在我在 B域名下登陆到A系统,并且取到A系统登陆后的个人信息页面(可能是第N个内页,加了会话过滤的),应如何实现同理,如果A域名的登陆换成Cookies保存会话,那又将如何实现?这应该算一个跨域会话交互的问题吧,先说明一下,A与B不在同一主机或集群服务器上,是两个分开的个体,比如A为公司服务器,B为我的办公PC,不知我的问题表述清楚没有?感谢大家一直以来的帮助和支持

解决方案 »

  1.   

    To TinyJimmy(Jimmy)能否详细一点……我以前尝试用框架页实现,但iframe经过Post提交后,用原iframe的ID属性就取不到其源文件了,当然Post提交前还是能取到的其实,我在网上看到有牛人已实现了此功能,所以特地来CSDN了解清楚些,希望牛人们别睡大觉哦
      

  2.   

    那种跨域名登陆的一般把信息放到cookie里(加过密的),如域名为: xxx.csdn.com 
    取cookie里的东西时,对后缀为:csdn.com是同一站点。如果不是很重要的这样做就行了。
      

  3.   

    To eureka0891(迷茫中...) 如果你对A的Cookies信息不怎么了解呢,就是说只有A登陆框的账号密码,那应该如何取得登陆后的内页面信息那家已实现此功能的网站的网址不太想贴出来呵,实在是无意在CSDN帮他们做免费推广……讨论继续……
      

  4.   

    是用一个Application 来保存  怎么样?
      

  5.   

    To jesse8013(每天进步一点点)
    A与B是两台不同的PC哦,并且不是集群中的,这里并不是两个个体登陆到一个系统的情况比如说我在“淘宝网”有一个账号,“163”有一个账号,还有在“51Job”有一个账号,我想在本地新建一个系统,分别用这三个账号取出自己的注册信息保存在本地,就这么简单!
      

  6.   

    据我所知,在两个域之间实现直接提取信息是不可能的。    因为Cookies和Session的定义是一个用户在某域的一个会话,这个前提已经决定了跨域信息不可能互相使用。但是可以使用其他变通的方式实现,如post/get提交
      

  7.   

    8会J2EE 来接点分哈 HOHO!~
      

  8.   

    专门做一个服务webservice,产生用户ID,然后各链接都带上ID!
      

  9.   

    我也遇到类似的需求,解决方法是:
    在A系统部署一个servlet(DealWithPageReq),专门用来响应其它系统的页面请求,如果这个页面需要登陆,则在转向页面之前完成登录操作。
    B系统发送一个对A系统的web页面请求,由B系统的DealWithPageReq处理。
    这个方法可以解决跨域登录的问题,实际使用过。如果A采用了cookie,可以在B系统同样保存cookie,随后在B系统中构造一个web request(用第三方库实现,如httpunit.jar),将B系统中的cookie读出来,作为参数传递给A系统(addCookie方法),A系统将请求的页面作为返回值给B系统,B系统再把页面返回给客户。没有尝试过。应该可行。
      

  10.   

    俺是楼主。想说明两点:
    其一,A系统是外部系统,比如163,搜狐,新浪,我们无法对A系统进行任何操作,只有拥有A系统的一个登陆账户而已其二,我们要利用已有的账号,取出属于我们的个人信息,就像Foxmail收邮件的过程一样,利用邮箱的用户名和密码,即可从服务器中取出该账户的全部邮件晚了,明天讨论继续,希望能提交斑竹置顶!
      

  11.   

    session.setAttribute("name","value");
    String str = session.getAttribute("name");
      

  12.   

    To fancy800(晓帆),能否详细交流?