请问 gin 与 echo 怎样设置或取消 cookie httponly 呢?

revel 设置cookies httponly 很简单,直接在conf里设置 true 或 false 即可

gin 和 echo 是怎样设置与取消cookies httponly 呢?

很麻烦么

共 7 个回复


gomgo

 addcookie := &http.Cookie{HttpOnly : true }
    http.SetCookie(c.Response(), addcookie)

echo 以上代码没错啊,怎么就设置不了呢?

# 1

gomgo

@butaixianran
正因为使用jwt,所以才要设置HttpOnly啊,防止js 读取 cookie
不使用 cookie , jwt_token 和 csrf_token 保存到哪里呢?

localStorage 是不能跨域的,所以只能在cookie

是这样的吧?

# 2

gomgo

明白了。把 revel Request.Request 打印一下就知道咋回事了。
revel 处理cookie和echo是不一样的。
同时记得把浏览器的缓存清理一下,js有时总是习惯取缓存的

# 3

butaixianran

token放在localStorage中。cookie一样有跨域限制。

# 4

butaixianran

  1. echo目前是个坑。树状路由容易冲突,必须有冲突检测,但echo没有。

  2. 层层包装、提供一堆自带功能的框架,觉得有用的去用就是了。这类框架的优劣不需要我来提,反正我们是不会去用的。

# 6