$ cookies.remove不适用于http:// localhost/path /#!/

Miq*_*uel 2 cookies node.js angularjs

正在处理的node.js服务器正在http://localhost:3000为根路径(path: '/')设置cookie .

有两个角度应用程序:

  • http://localhost:3000/#!
  • http://localhost:3000/admin/#!

这两个应用程序可以看到所有的cookie http://localhost:3000path: '/'.

$cookies.remove(cookieName)http://localhost:3000/#!应用程序使用它工作正常.

$cookies.remove(cookieName)从中使用http://localhost:3000/admin/#!时不会删除cookie.

有没有办法从子路径中删除cookie而无需修改服务器中的路径?(我不喜欢这样做,因为两个应用程序共享一些使用cookie的路由).

Mik*_*ike 6

问题是该ngCookies模块假设您编辑的所有cookie仅归因于您当前所在的路径,并且不允许您编辑其他cookie,除非您专门配置它.如果你想要编辑的路径一个cookie //admin你需要的对象PARAM添加对象具有path指标指向你想要删除cookie中设置的路径.

在你的情况下:

$cookies.remove(cookieName, {path: '/'});
Run Code Online (Sandbox Code Playgroud)