Junior
Ի՞նչ մեթոդներ կան սերվլետներում cookies-ի հետ աշխատելու համար։
sobes.tech AI
Պատասխան AI-ից
Սերվլետներում, cookie-ների հետ աշխատելու համար օգտագործվում են HttpServletRequest օբյեկտի մեթոդները (cookie ստանալու համար) և HttpServletResponse (cookie ուղարկելու համար):
Cookie ստանալու համար հարցումից:
Cookie[] getCookies(): Վերադարձնում էCookieօբյեկտների զանգված, որոնք ստացվել են հարցումից: Եթե cookie չկա, վերադարձնում էnull:
Cookie ուղարկելու համար պատասխանին:
void addCookie(Cookie cookie): Ավելացնում է նշվածCookieօբյեկտը պատասխանին:
Cookie դասը պարունակում է հետևյալ հիմնական մեթոդները:
String getName(): Վերադարձնում է cookie-ի անունը:String getValue(): Վերադարձնում է cookie-ի արժեքը:void setValue(String newValue): Կարգավորում է cookie-ի նոր արժեքը:String getPath(): Վերադարձնում է ճանապարհը, որով հասանելի է cookie-ն:void setPath(String uri): Կարգավորում է cookie-ի ճանապարհը:String getDomain(): Վերադարձնում է դոմենը, որի համար cookie-ն է գործում:void setDomain(String pattern): Կարգավորում է cookie-ի դոմենը:int getMaxAge(): Վերադարձնում է cookie-ի առավելագույն կյանքը (վայրկյաններով): բացասական արժեքը նշանակում է, որ cookie-ն գոյություն ունի մինչև բրաուզերի փակումը: 0 նշանակում է cookie-ն ջնջել:void setMaxAge(int expiry): Կարգավորում է cookie-ի առավելագույն կյանքը:boolean getSecure(): Վերադարձնում էtrue, եթե cookie-ն պետք է ուղարկվի միայն պաշտպանված (HTTPS) կապի դեպքում:void setSecure(boolean flag): Կարգավորում է անվտանգ կապի նշանը:int getVersion(): Վերադարձնում է cookie-ի պրոտոկոլի տարբերակը:void setVersion(int v): Կարգավորում է cookie-ի պրոտոկոլի տարբերակը:boolean isHttpOnly(): Վերադարձնում էtrue, եթե cookie-ն հասանելի է միայն HTTP հարցումներով (չէ JavaScript-ով):void setHttpOnly(boolean isHttpOnly): Կարգավորում է HttpOnly նշանը:
Օրինակ՝ cookie ստանալու և տեղադրելու համար:
// Cookie ստանում է հարցումից
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if ("userName".equals(cookie.getName())) {
String userName = cookie.getValue();
// Օգտագործեք cookie արժեքը
break;
}
}
}
// Նոր cookie տեղադրում է պատասխանին
Cookie newCookie = new Cookie("language", "en");
newCookie.setMaxAge(60 * 60 * 24 * 30); // 30 օր
response.addCookie(newCookie);