C#中webbrowser控件cookie问题

bac6898941 2010-09-07 01:48:27
写了个winform程序,主界面上有Button1和Button2按钮,点击分别弹出dialog1和dialog2
dialog1中有个webbrowser控件,url=http://www.xici.net和一个"确认登陆"按钮
dialog2中也有个webbrowser控件,url=http://user.xici.net/mail/sendto.asp"
现在我点击Button1进入dialog1中,正确登陆西祠后,点击"确认登陆"按钮关闭了dialog1,返回主界面
确认登陆按钮代码如下:
private void ok_Click(object sender, EventArgs e)
{
string mystr = null;
this.cookie = this.webBrowser1.Document.Cookie;

if (this.cookie == null) return;
string[] cookstr = cookie.Split(';');
foreach (string str in cookstr)
{
string[] cookieNameValue = str.Split('=');
if (cookieNameValue.Length != 2) continue;
Cookie ck = new Cookie(cookieNameValue[0].Trim().ToString(), cookieNameValue[1].Trim().ToString());
if(cookieNameValue[0].Trim().ToString() == "uid")
{
if (cookieNameValue[1].Trim().ToString() != "0")
{
mystr = cookieNameValue[1].Trim().ToString();
}
}
ck.Domain = ".xici.net";//必须写对
cc.Add(ck);
//ck.Expires = DateTime.Now.AddHours(1);
}
if (mystr != null) MessageBox.Show("确认登录成功,返回主界面");
else MessageBox.Show("登陆失败,请重新登陆");
this.DialogResult = DialogResult.OK;
}

dialog2(窗口名称是message)中默认函数代码如下
public Message()
{
InitializeComponent();
this.webBrowser1.Navigate("http://user.xici.net/mail/sendto.asp");
}



现在的问题是,我在点击Button1进入dialog1并且正确登陆西祠,点击确认登陆并且关闭dialog1后,点击进入dialog2,dialog的webbrowser无法显示http://user.xici.net/mail/sendto.asp的内容,我试着将url换成http://www.baidu.com可以显示,只要不是xici.net域名下的都能显示,我也试着不点击Button1进入dialog,直接点击Button2进入dialog2,http://user.xici.net/mail/sendto.asp这个页面可以显示,这样看来,应该就是cookie那边出了问题,哪位仁兄帮着解决下,
...全文
677 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧