请问httpclient如何实现跨域的登录及登录后访问。比如登录为login.xxx.net/login.do,查询用户为cms.xxx.net/userquery.do。后者需要filter过滤session中登录信息是否存在才能继续访问。用httpclient4.x时,用同一个httpclient实例分别想这两个请求发起请求,但jessionid不同,导致后者认为session不存在。谢谢!

解决方案 »

  1.   

    访问的来源变了吧,session找不到很正常哦,httpclient用过,不过不会楼主所说的。
      

  2.   

    第一个请求返回的jessionid给第二个用。
      

  3.   


    不行哦,因为第二次域名不一样,httpclient总是生成一个新的cookie,jsessionid就不一样了。
    第一个:
    Local cookie: [version: 0][name: JSESSIONID][value: VBgZTnpRHSj7hwhQjmwPqbggX8VhQGKlbG7sk8SnhVnYBLlPcHVC!-1882388612][domain: login.xxx.net][path: /][expiry: null]
    第二个:
    Local cookie(0): [version: 0][name: JSESSIONID][value: 3ZjVTnpWWgX1vL1v36wWby8KlB2D9JgHtkD22VJJvmM2pVZGL6Wm!-1882388612][domain: userquery.xxx.net][path: /][expiry: null]
    Local cookie(1): [version: 0][name: JSESSIONID][value: VBgZTnpRHSj7hwhQjmwPqbggX8VhQGKlbG7sk8SnhVnYBLlPcHVC!-1882388612][domain: login.xxx.net][path: /][expiry: null]
      

  4.   

    不是httpclient产生的新cookie,是服务端。firebug查看下,知道模拟一样的cookie,jessoinid为止。
      

  5.   

    游戏外挂呀?不能用session,直接跟随转向试试看!