用户发出http请求时可以看到JWT吗?

时间:2019-07-09 18:23:53

标签: http request jwt

我正在从React向我们的API发出http请求以进行身份​​验证。我正在使用fetch发出请求。

我的问题是,用户可以转到chrome开发工具中的“网络”标签,找到请求并查看自己的令牌吗?

2 个答案:

答案 0 :(得分:0)

是的,他可以看到整个请求,包括所有请求标头。

答案 1 :(得分:0)

要视情况而定。

通常,用户可以在Chrome开发者工具的“网络”面板中的HTTP请求中看到所有请求标头。

但是,在Chrome 67之后,引入了一项名为“ Site isolation”的新功能,并默认启用。结果:

  

在Chrome的DevTools中,对于跨站点子资源请求,cookie和其他请求标头未显示在网络面板中。

也就是说,如果JWT令牌是通过Cookie在子域站点中传输的,并且JWT-cookie的域是通配符,则它将不会显示在“网络”面板中。

这里是一个例子。 cookie token的域为.miaotest.com,它在对站点cshao.miaotest.com的HTTP请求中使用。当此Cookie成功传输到后端后,您将不会在开发工具的“请求标头”部分中看到它。

Cookie token在“应用程序”面板中的信息: enter image description here

Cookie token已发送,但未显示在“网络”面板中: enter image description here

请注意,可以通过在Chrome中访问chrome://flags/#site-isolation-trial-opt-out来禁用“站点隔离”功能。