2011-12-15 3 views
17

मैं Grails 2 (आरसी 3) का उपयोग कर एक कुकी बनाने की कोशिश कर रहा हूं। मैं इसका उपयोग फेसबुक कैनवास ऐप के लिए कर रहा हूं, जिसका मतलब है कि प्रत्येक ब्राउजर रीफ्रेश पर, सत्र खो जाता है।मैं Grails 2.0 में कुकीज़ कैसे बना और पुनर्प्राप्त करूं?

मैं कुकीज़ प्लगइन का उपयोग कर की कोशिश की है, लेकिन ऐसा लगता है कि यह Grails 2.

कोई मदद काफी सराहना की जाएगी साथ संगत नहीं है!

उत्तर

31

आप <g:cookie> टैग

Hello <g:cookie name="myCookie" /> 

तुम भी एक नियंत्रक से इस टैग का उपयोग कर सकते हैं का उपयोग कर एक जीएसपी में एक कुकी का मान प्राप्त कर सकते हैं:

String name = g.cookie(name: 'myCookie') 

आप का उपयोग कर एक कुकी सेट कर सकते हैं सर्वलेट एपीआई

Cookie cookie = new Cookie("myCookie","Cookie Monster") 
cookie.maxAge = 100 
response.addCookie(cookie) 
+0

बहुत बढ़िया। बहुत बहुत धन्यवाद। क्या नाम से अनुरोध से कुकी प्राप्त करने का कोई तरीका है या क्या मुझे अनुरोध प्राप्त करना है .getCookies() और फिर वहां से इसे पार्स करें? – cavneb

+5

मुझे इसका उत्तर मिला: 'def signRequestCookie = request.cookies.find {it.name == 'sign_request'}' ... धन्यवाद! – cavneb

+1

उपर्युक्त उदाहरण दिखाता है कि कुकी 'g.cookie (name:' myCookie ') द्वारा' कुकी 'कैसे प्राप्त करें' –

3

आप Cookie Plugin उपयोग कर सकते हैं:

// Inject service 
def cookieService 
... 
// This sets a cookie with the name `username` to the value `admin`  with a expiration set to a week, defined in seconds 
cookieService.setCookie('username', 'admin', 7 * 24 * 60) 
cookieService.getCookie('username') // returns 'admin' 
cookieService.deleteCookie('username')