【暂未解决】Eclipse中调试Java代码期间如何修改值
来源:互联网 发布:饼干是什么意思网络上 编辑:程序博客网 时间:2024/05/17 08:16
在路上 > 工作和技术 > IDE TextEditor > Eclipse > 【暂未解决】Eclipse中调试Java代码期间如何修改值
【背景】
折腾:
【教程】模拟登陆百度之Java代码版
期间,调试代码期间,发现,对应的第三次的访问百度,访问:
https://passport.baidu.com/v2/api/?login
时之前的cookie,是这样的:
[
[version: 0][name: BAIDUID][value: 7164BE33080CE050940980ECBDFBCB9C:FG=1][domain: .baidu.com][path: /][expiry: Thu Sep 17 14:22:08 CST 2043],
[version: 0][name: BDSVRTM][value: 1][domain: www.baidu.com][path: /][expiry: null],
[version: 0][name: HOSUPPORT][value: 1][domain: passport.baidu.com][path: /][expiry: Sat Dec 04 14:22:31 CST 2021],
[version: 0][name: H_PS_PSSID][value: 3359_3341_2776_1424_2981][domain: .baidu.com][path: /][expiry: null]
]
想要将其中的
H_PS_PSSID
的
expiry
的值,从null改为:
Thu Sep 17 14:22:08 CST 2043
保证其不过期。
但是在Eclipse中,发现无法更改:
【解决过程】
1.参考:
Eclipse Tip: Change variable values while debugging
好像比如把要修改值的变量,加到Watch列表里面去。
2.所以去试试,
然后去修改值:
Change Value
填入新的值:
Thu Sep 17 14:22:08 CST 2043然后OK:
结果无法修改,cookieExpiryDate还是之前的null。
3.然后再去试试,找找另外别的cookie的expiry的值是什么,然后再参考去修改。
然后再去填入
H_PS_PSSID
的expiry的新值:
结果却是超过int限制:
4.参考:
Changing variables in realtime when debugging in eclipse?
提到的:
Change Variable Value
去试试表达式:
new
Date(
"Thu Sep 17 14:22:08 CST 2043"
);
即:
看看是否有效。
结果都是错误:
5.然后想想,是不是少了return,所以去试试:
待会再试。
6.去把代码输入到Eclipse中:
Date newExpiryDate =
new
Date(
"Thu Sep 17 14:22:08 CST 2043"
);
结果显示:
The constructor Date(String) is deprecated详见:
【已解决】Eclipse中用java代码去new Date结果出错:The constructor Date(String) is deprecated
7.搞定了如何用代码设置时间后,再去试试:
new
GregorianCalendar(
2043
,
9
,
17
,
14
,
22
,
8
);
即:
结果是,还是不行。
8.再去试试上面的,加上return看看:
return
new
GregorianCalendar(
2043
,
9
,
17
,
14
,
22
,
8
);
即:
结果是,还是不行。
【总结】
至此,还是没搞定,在Eclipse调试期间,如何去更改一个CookieStore中的一个cookie的cookieExpiryDate的值。
算了,还是另外,通过手动去写代码,去设置此Expiry值吧。
最后是用如下代码:
//do some workaround to makesure here cookie H_PS_PSSID not expire
//[version: 0][name: H_PS_PSSID][value: 3359_3341_2776_1424_2981][domain: .baidu.com][path: /][expiry: null]
//Date newExpiryDate = new Date("Thu Sep 17 14:22:08 CST 2043");
//Date newExpiryDate = new Date();
Date newExpiryDate =
new
Date(
2043
,
9
,
17
);
//Calendar newExpiryCalendar = new Calendar();
//Calendar newExpiryCalendar = new GregorianCalendar();
//Calendar newExpiryCalendar = new GregorianCalendar(2043, 9, 17);
//Calendar newExpiryCalendar = new GregorianCalendar(2043, 9, 17, 14, 22, 8);
BasicClientCookie hPsPssidCookie =
null
;
int
hPsPssidCookieIdx =
0
;
curCookieList = crl.getCurCookieList();
for
(Cookie ck : curCookieList)
{
if
(ck.getName().equalsIgnoreCase(
"H_PS_PSSID"
))
{
hPsPssidCookieIdx = curCookieList.indexOf(ck);
hPsPssidCookie = (BasicClientCookie) ck;
hPsPssidCookie.setExpiryDate(newExpiryDate);
ck = hPsPssidCookie;
break
;
}
}
crl.setCurCookieList(curCookieList);
基本实现了,手动去修改那个特殊的cookie的expiry的值。
- 【暂未解决】Eclipse中调试Java代码期间如何修改值
- Eclipse调试过程中,如何修改变量的值?
- eclipse中如何修改代码字体
- Eclipse中如何修改Java代码注释的样式和如何提取出注释文档
- eclipse 调试java程序出现Source not found.如何解决?
- 如何解决eclipse中修改后台代码ctrl+s时总是自动重启服务的问题
- eclipse/myeclipse中如何开启断言调试代码
- 代码中的异常如何处理【未解决】
- 如何修改eclipse下的Java代码注释模板
- 如何解决Eclipse中Android 代码自动补全卡死的问题
- Java-中文版Eclipse中代码提示功能修改
- 如何在Eclipse中Debug调试Java jdk源代码
- 如何在Eclipse中Debug调试Java jdk源代码
- 如何在Eclipse中Debug调试Java jdk源代码
- Eclipse 修改java代码风格
- Eclipse解决每次修改java代码或jsp代码服务器重启问题的解决办法
- 解决eclipse中java代码注释变成乱码的问题
- 解决eclipse中java代码注释变成乱码的问题
- test对拍板子(但并不理解原理)
- 递推 HDOJ2045
- 图解Git/图形化的Git参考手册
- 【2007】聪明的兔子
- AngularJS模块加载
- 【暂未解决】Eclipse中调试Java代码期间如何修改值
- typescript-let
- NSDate格式化字符
- 优先使用单表查询,而非联合查询
- phpcms 学习笔记(一)
- bzoj2226(又是智商的突破,加油)
- Linux 使用QQ2013
- MyBatis学习总结(六)调用存储过程
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解