无法清除cookie中的属性值之对解决问题的思考
关于如何快速解决一个自己知识以外的问题的思考
做好任何事情都是讲究方法的,这是我健身之后的一个领悟,用正确的方式做事,自己的付出才能有价值。
首先分析问题:
比如我想清除cookie里面的token,我调用了unsetCookie('token'),看下unsetCookie这个方法是怎么写的,为什么调用了没有清除我要清除的token的值(解决问题要有自己的思路),我期望它是什么样的(预期是什么样的),预期是希望调用unsetCookie去重新设置一个为空值的同名的token(要知道自己写的代码都在干啥,逻辑要搞明白),也就是创建一个为空的同名的token去覆盖之前的。
然后就是根据问题提出自己的假设:
调用的方法没有达到预期效果,那猜测是因为没有覆盖,没有覆盖的原因可能是因为不是同一个cookie。
验证假设直到验证成功或推翻(思维不要乱,一定要有逻辑的去推和验证):
如果不是同一个cookie那么调用setCookie应该会新增一条cookie记录,然而现实情况是浏览器中没有看到新增一条,是否和设置的空值有关?浏览器中测试一下,调用setCookie设置一个有值的token,看是否能创建,还是没有看到浏览器中有新的cookie,设置的cookie删除的情况最有可能和设置的过期时间有关,过期时间在当前时间之前,检查一下 设置的过期时间,读出来貌似确实有问题,延长下过期时间,然后再调用setCookie,看到一条新的cookie。
验证成功
确实是新增了cookie,很快就发现浏览器中两条cookie的domain不一致,调用的unsetCookie的cookie的domain多了一个".",锁定问题,domain有问题,看下对应的代码,在直接调用setCookie时没有传domain,在调用unsetCookie时,里面的在调用setCookie时传了domain参数。都不传domain,发现可以覆盖了。
搞清楚原因:
修改cookie,path/domain必须一致,否则会新增cookie,然后再查文档会发现当设置cookie时,如果不指定domain默认cookie的domain会是当前域名(比如:当前域为baidu.com,domain为baidu.com),如果指定了domain,cookie的domain指的是包含当前域名的子域名(domain为:.baidu.com)
总结:
解决问题要有思路,要有自己的一套解决问题的方法。
解决问题的套路大概总结为如下:
遇到问题,首先要搞清楚问题是什么,你的代码怎么写的出了什么问题;然后你本来希望是什么样的;为什么和你预期不一样,不一样的可能原因,提出假设;验证假设推成功或推翻。
多一些耐心多一些思考,相信很多没有遇到过的问题都可以靠自己去找到解决方案。
写的代码会忘记,但学会的解决问题的能力会是一直伴随自己的财富。
无法清除cookie中的属性值之对解决问题的思考的更多相关文章
- <s:property="a" value=""/>取的<s:debug></s:debug>中的value stack中的属性值
<s:property="a" value=""/>取的<s:debug></s:debug>中的value stack中 ...
- 将source类中的属性值赋给target类中对应的属性
/** * 对象的属性值拷贝 * <p> * 将source对象中的属性值赋值到target对象中的属性,属性名一样,类型一样 * <p> * example: * <p ...
- Spring中使用@Value读取porperties文件中的属性值方法总结及注意事项
本文为博主原创,转载请注明出处. 此前曾总结过使用工具类读取properties文件中的属性值,有兴趣的可以看一下. 如何快速获取properties中的配置属性值:https://www.cnblo ...
- 【Python】获取翻页之后的各页面中的属性值。
如何获取翻页之后的页面中的html标签中的属性值? # coding=utf-8 from selenium import webdriver if __name__=="__main__& ...
- ajax取到数据后如何拿到data.data中的属性值
今天遇到的ajax取到数据后如何拿到data.data中的属性值的问题 比如拿到了数据 我要取出data中的name 题外话:当然取名最好别取什么奇怪的xiaobi
- Implement Property Value Validation in the Application Model 在应用程序模型中实现属性值验证
In this lesson, you will learn how to check whether or not a property value satisfies a particular r ...
- js获取cookie中存储的值
最近看了试卷题目发现自己会的十分的匮乏, 第一题就把自己难住了,知道有这个东西,但是实际上没有操作过. ========================================= cookie ...
- 在函数中处理html点击事件在标签中增加属性值来解决问题。
- spring boot 读取配置文件(application.yml)中的属性值
在spring boot中,简单几步,读取配置文件(application.yml)中各种不同类型的属性值: 1.引入依赖: <!-- 支持 @ConfigurationProperties 注 ...
随机推荐
- C#正则表达式语法教程
C#语法之正则 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力 ...
- 51nod- 【1042 数字0-9的数量 】
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1042 题目: 1042 数字0-9的数量 基准时间限制:1 ...
- 如何用input标签上传多个图片并回显
本文主要记录如何用input标签和jquery实现多图片的上传和回显,不会涉及后端的交互,大概的效果看图 我们从零来做一个这样的demo 第一步: 我们先完善一下我们的页面,默认的input-file ...
- 小米4c刷LineageOS
注意,本文仅限于小米4c,其他手机仅可参考步骤.如下rom,su,gapps包的下载都是小米4c的,深刷miflash也仅适用于小米手机.准备工作:请自行备份好手机内的个人资料. 电脑环境,usb驱动 ...
- yum小结
1.查看系统默认安装的yum# rpm -qa|grep yum2.卸载yum# rpm -e yum-fastestmirror-... yum-metadata-parser-... yum-3. ...
- 《DSP using MATLAB》Problem 5.10
代码: 第1小题: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Out ...
- Java中动态获取项目根目录的绝对路径
https://www.cnblogs.com/zhouqing/archive/2012/11/10/2757774.html 序言 在开发过程中经常会用到读写文件,其中就必然涉及路径问题.使用固定 ...
- 【HAOI2014】遥感监测
独立博客被硬盘保护干掉了真不爽啊…… 原题: 外星人指的是地球以外的智慧生命.外星人长的是不是与地球上的人一样并不重要,但起码应该符合我们目前对生命基本形式的认识.比如,我们所知的任何生命都离不开液态 ...
- SQLyog中创建数据表及相关查询方法
USE du; /*1.创建账务表 id name mony*/ CREATE TABLE zhangwu(id INT PRIMARY KEY AUTO_INCREMENT, sname VARCH ...
- sqler sql 转rest api 授权处理
我们可以使用内置的authorizer 以及js 脚本,方便的进行api 接口的授权处理 说明: 这个是2.0 的功能,注意版本的使用 参考格式 addpost { authorizer = & ...