算算,有一個星期沒寫blog,自己最近也有些事情忙,而且也沒找到很有價值的東西寫,所以一直就拉著。最近工作上也沒有 特別煩惱的事,所以也就少了些生活感慨。
最近的一個小程序中,使用到HttpWebRequest,在對子域名訪問的時候,發現HttpWebRequest並不會提交與他域名不同的cookie值,其實這也是正確,畢竟只需要發送本域cookie就是了,不過HttpWebRequest不會判斷是否是主域名的cookIE值。比如說
主站 www.ABC.com 有個cookIE值為 test : 123123 domain:ABC.com
子站bbs.ABC.com 使用HttpWebRequest訪問的時候,就算添加了test這個cookIE,它也是不會發送的。
Reflector .Net的代碼後發現,其添加cookIE值的方法如下
這裡可以看出,是通過地址得到cookie的值的,所以bbs.ABC.com只會發送domain=bbs.ABC.com的cookIE值。
解決方法,強制把domian給改掉就可以了