问题描述
publicCookieContainergetCookie(stringcookie){CookieContainermyCookieContainer=newCookieContainer();stringcookieStr=cookie;string[]cookstr=cookieStr.Split(';');foreach(stringstrincookstr){if(str.IndexOf("=")>0){string[]cookieNameValue=str.Split('=');Cookieck=newCookie(cookieNameValue[0].Trim().ToString(),cookieNameValue[1].Trim().ToString().Replace(",","%2C"));ck.Domain="qq.com";myCookieContainer.Add(ck);}else{Cookieck=newCookie(str,"3456789");ck.Domain="qq.com";myCookieContainer.Add(ck);}}returnmyCookieContainer;}
通过这个方法设置Cookie,但是在获取webBrower的cookie中,会出现没有值的cookie,如下:qz_screen=1920x1080;randomSeed=372107;cpu_performance=12;__Q_w_s__QZN_TodoMsgCnt=1;fnc=2;Loading=Yes;qzmusicplayer=qzone_player_12345678_1378561143912;pgv_pvid=3861750480;ptui_loginuin=12345678;pt2gguin=o12345678;ptcz=0496629c0b9e2ad082719949ebd45b531d8db7ecab70def5d291fc381512da68;ac=1,030,017;uin_cookie=12345678;euin_cookie=10F972357F8C67D941AA834D0AF2DFFD1418DFF6F306E682;qq_photo_key=ae72a808a4b62a5383d37ed5f6d399a7;ptisp=ctc;pgv_info=ssid=s12345678;uin=12345678;skey=@5IlaSExnE;qqmusic_uin;qqmusic_key;qqmusic_fromtag上面是获取QQ空间的Cookie,一般都会存在健值对,但最后:qqmusic_uin;qqmusic_key;qqmusic_fromtag这三个,没有值,通过处理把没有值的随便赋值就会报标题那样的错误,设置空,null,任意值都不行;但是,如果舍弃这三个没有值的cookie,又无法获得网页权限。请问坛子里的高人,如果对最后三个没有值的来做处理呢?
解决方案
解决方案二:
Cookieck=newCookie(HttpUtility.UrlEncode(str),"");
解决方案三:
cookie参数传进来就没有值?
解决方案四:
是cookie里面逗号的原因吧,用1楼的办法可以解决的。
解决方案五:
没搞过这个,帮你顶起!