2012-07-15 87 views
3

所以,我试图使用cookie插件(在这里看到:http://grails.org/plugin/cookie),总的来说,它的工作得很好。但是,由于路径问题,我遇到了从应用程序的不同部分访问我的Cookie的问题。Cookie插件,问题与路径

我得到的cookie存储在不同的地方,取决于我在哪里应用。

我已经添加到了我的Config.groovy中,由插件页面的建议:

com.studentuniverse.grails.plugins.cookie.services.CookieService.metaClass.setCookie = { response, name, value, maxAge -> 
def cookie = new javax.servlet.http.Cookie(name, value) 
cookie.setMaxAge(maxAge) 
cookie.setPath("/") 
response.addCookie(cookie) 

}

但是,这似乎并没有改变任何东西。我仍然得到两个cookie,一个存储在/ [AppName]/[Controller1]中,另一个存储在/ [AppName]/[Controller2]中。理想情况下,我希望两者都存储在/ [AppName]中。但是,我对setPath变量所做的任何更改似乎都没有影响。我甚至试过将其更改为

​​

预见,这将是存储在/ [AppName的]/[控制器1] /饼干,例如,但没有做出更改。我是否需要在其他地方传递路径变量,或以不同的方式修改该路径?

回答

3

您是否尝试过添加域名?

这里是我的代码,它工作正常

def myCookie = new Cookie(cookieName, cookieValue) 
     myCookie.setMaxAge(cookieExpTime) 
     myCookie.setDomain(cookieDomain) 
     myCookie.setPath("/") 
     // Force all cookie to only be able to be transmitted over SSL if true. 
     myCookie.setSecure(isSecure) 
     response.addCookie(myCookie) 
+0

这工作,谢谢。 – lashiel 2012-07-15 06:54:11

+0

我很高兴工作 – allthenutsandbolts 2012-07-16 03:18:43