Cookie,Session的部分坑.

拙见


今天下午在写程序的时候,发现document.cookie怎么也取不到值,百度了很久都没找到答案,或许是我太笨了吧.
到最后才发现是后端没有为Cookie设置Path,所以在login页面设置的Cookie在别的页面并不能取到.另外,强烈谴责一些人只知道复制粘贴博文的行为,即使是有别的,也说的语焉不详,不知道到底怎么解决.
比较恶心的是,我所看到的大部分人对Cookie的解释是每次发送Http请求都会带上Cookie,我认为这表达的不清晰,我误解为Cookie会全部带上(其实细细想来,似乎以前看的Cookie教程里面有讲,但是自己忘了,有罪…)
应该是请求会带上设置Cookie的源的Cookie.
举个例子,在localhost:8888/login下发送了ajax请求比如说请求的地址为api/login,并在后端设置了Cookie且没有设置Path,那么在别的页面是拿不到api/login得到的Cookie的…
如果在后端设置了Cookie的Path,那么在别的页面也就可以拿到了.
每次请求发送的Cookie应该是当前页面可以发送的Cookie,比如说/目录下的Cookie,或者是/api/login及其子目录下的Cookie,而不是全部的Cookie.
可以用Postman测试一下看看Cookie的Path.

猜你喜欢

转载自blog.csdn.net/Ad5226236/article/details/83217035