在http://localhost:3000
上工作的node.js服务器正在为根路径(path: '/'
)设置cookie。
有两个角度应用:
http://localhost:3000/#!
http://localhost:3000/admin/#!
这两个应用都可以查看http://localhost:3000
和path: '/'
的所有Cookie。
使用$cookies.remove(cookieName)
应用中的http://localhost:3000/#!
时效果很好。
使用$cookies.remove(cookieName)
中的http://localhost:3000/admin/#!
时,它不会删除Cookie。
有没有办法从子路径中删除cookie而无需修改服务器中的路径? (我不愿意这样做,因为两个应用程序共享一些使用cookie的路由)。
答案 0 :(得分:6)
问题是ngCookies
模块假设您编辑的所有Cookie只会归因于您当前所在的路径,并且除非您专门配置它,否则不允许您编辑其他Cookie这样做。如果要从/
编辑路径/admin
上的cookie,则需要在对象参数中添加一个对象,其中path
索引指向您要删除的cookie中设置的路径
在你的情况下:
$cookies.remove(cookieName, {path: '/'});