<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-50  評論-55  文章-8  trackbacks-0

    今天測試設置和獲取Cookie遇到了一點小問題,很奇怪的問題;
    把J2ee服務部署在本地 8080端口;訪問任何一個服務時,如果客戶端沒有cookie,則下發cookie,
    ?如果客戶端已經有了該cookie的值就不下發,代碼邏輯如下:
    String uid="";
    Cookie mycookies[] = request.getCookies();
    ?if (mycookies!= null) {
    ??????????? for (int i = 0; i < mycookies.length; i++) {
    ??????????????? if ("uid".equalsIgnoreCase(mycookies[i].getName())) {
    ??????????????????? uid=mycookies[i].getValue();
    ??????????????? }
    ?????????????}
    ??????? }
    ?????if(!StringUtils.isNull(uid)){
    ????? //do nothing
    ? }else{
    ? String host=request.getHeader("host");
    ?uid=UUID.create();
    ?Cookie? mycookie = new Cookie("uid",uid);
    ?mycookie.setDomain(host);
    ?mycookie.setMaxAge(93312000);//三年
    ?response.addCookie(mycookie);
    }
    System.out.println("uid is>"+uid);
    1、訪問:
    ?? http://localhost:8080/
    ?? 以及內部的頁面,打印uid的值是相同的;符合要求
    2、訪問:
    ? http://127.0.0.1:8080
    ? 以及內部的頁面, uid每次都獲取得值都是不同的;
    兩者的區別僅僅的訪問的方式不同,如果用ip訪問
    ??Cookie mycookies[] = request.getCookies();中永遠獲取不到uid的值;
    80端口號除外

    查了瀏覽器的具體cookie值,發現
    http://localhost:8080/?訪問的時候,cookie值放在localhost下,服務器自動生成的SESSIONID也是存放在localhost路徑下。
    http://127.0.0.1:8080/ 訪問的時候,cookie uid值放在127.0.0.1:8080下,在127.0.0.1:8080下的cookie服務端的Servlet永遠都獲取不到;而服務器自動生成的SESSIONID則是在127.0.0.1下,與uid存放位置不同。

    所以在服務端下發cookie的時候,
    String host=request.getHeader("host");
    需要修改為
    if(host.indexOf(":")>-1){
    ??? ??host=host.split(":")[0];
    ??? ?}
    或者放棄設置mycookie.setDomain(host);
    這樣cookie值也是保存在127.0.0.1下的,與端口號不關聯
    ?當然是服務器已經有域名的就不會出現端口號下獲取不到cookie的值;

    posted on 2009-09-07 20:06 蔣家狂潮 閱讀(5235) 評論(1)  編輯  收藏 所屬分類: JWeb

    評論:
    # re: Servlet的Cookie值保存與獲取 2009-09-08 11:27 | 禮物吧
    原來如此  回復  更多評論
      
    主站蜘蛛池模板: 大学生一级特黄的免费大片视频| 亚洲一级毛片免费观看| 免费不卡中文字幕在线| 亚洲国产精品久久久久秋霞小 | 国产做国产爱免费视频| 免费成人av电影| 一级毛片免费不卡直观看| 亚洲欧洲精品成人久久曰影片| 未满十八私人高清免费影院| 亚洲午夜无码毛片av久久京东热| 国产99视频精品免费观看7| 亚洲视频一区二区三区四区| 亚洲欧洲免费无码| 久久精品国产亚洲AV| 夜色阁亚洲一区二区三区| 亚洲依依成人精品| 好先生在线观看免费播放| 亚洲熟女乱色一区二区三区| 国产大片91精品免费观看男同| 美女啪啪网站又黄又免费| 亚洲一级片免费看| 久爱免费观看在线网站| 亚洲伦理中文字幕| 免费一级毛片不卡不收费| 黄床大片免费30分钟国产精品| 亚洲AV日韩精品久久久久久久| 91精品导航在线网址免费| 在线观看亚洲AV每日更新无码| 国产精品免费视频一区| 永久在线观看免费视频| 亚洲国产美女在线观看| 国产色爽女小说免费看| 97超高清在线观看免费视频| 亚洲精品资源在线| 亚洲?v女人的天堂在线观看| 久久久久久AV无码免费网站下载| 亚洲精品无码成人| 麻豆亚洲AV永久无码精品久久 | 亚洲熟女一区二区三区| 18级成人毛片免费观看| 国产午夜亚洲精品不卡|