Avatar billede mr_mudderkode Nybegynder
29. juli 2002 - 11:35 Der er 4 kommentarer og
1 løsning

Cookies (igen)

Jeg sætter en cookie. Jeg bruger setMaxAge(30000) til at den først skal udløbe om 30000 sekunder. Ingen problemer. MEN. Hvis jeg bliver på den samme side, og forsøger at sætte den samme cookie engang til, blot med en let modificieret værdi, så forsøger jeg at læse maxage på den eksisterende cookie, og overføre den til den nye. Så er min cookie pludselig en session cookie???

Jeg laver blot en getMaxAge() på den eksisterende cookie, og jeg får -1 ???
Avatar billede prom Nybegynder
30. juli 2002 - 12:46 #1
Kom med noget kode....

prom
Avatar billede mr_mudderkode Nybegynder
30. juli 2002 - 13:48 #2
private void setCookies(HttpServletResponse res, Cookie[] cookies) {
    Cookie cookie;
    if (cookies.length == 0) {
        cookie = new Cookie("TestCookie","test");
        cookie.setMaxAge(30000);
        res.addCookie(cookie);
    }
    for (int i=0; i<cookies.length; i++) {
        // forsøger at sætte cookie igen, med et "x" tilføjet værdifeltet.
        cookie = new Cookie (cookies[i].getName(), cookies[i].getValue()+"x");
        cookie.setMaxAge(cookies[i].getMaxAge());
        res.addCookie(cookie);
    }
  }
}
Avatar billede prom Nybegynder
31. juli 2002 - 10:04 #3
Først spørger du:
hvis cookies.length == 0
så addCookie(cookie) til HttpServletResponset. Så langt så godt...

Men så prøver du at løbe dit cookies array igennem i for-løkken... Det går ikke, da arrayet stadig er tomt.... res.addCookie(cookie), har ingen effekt på din overførte parameter cokkies...

Jeg kan ikke se hvad det hele har med din såkaldte "sessionscookie" at gøre :)

prom
Avatar billede mr_mudderkode Nybegynder
31. juli 2002 - 13:58 #4
HVIS der ikke er nogen cookies sendt med i forespørgslen fra browseren, sætter vi en cookie.

Og ellers kører vi dem igennem, og modificerer dem.

For forståelsens skyld burde jeg nok have lavet det som en if-else

if (cookies.length==0) {
    ...
}
else {
    for (int i=0;.....) {
      ...
    }
}

men som du selv siger, så er det uden indflydelse.
Avatar billede mr_mudderkode Nybegynder
10. september 2002 - 13:18 #5
Jeg lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester