如何用C#获取HTTP头信息的内容?

hongyu1985 2007-08-31 08:44:29
我在编写一个winform程序,里面有一个webbroser控件,我想得到webbroser里显示的网页的来路(就是说他是由哪个网站链接过来的,比如这个网页是百度搜索链接过来的,我就能在某个地方显示百度的字样)我目前的思路是获取http头文件的信息,进行分析,但不知具体怎么操作,哪位高人做过或者知道怎么做,指点一下,不胜感激!!!!!!!!!!!!!!!!!!!!!!!!!!
...全文
1450 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongyu1985 2007-09-01
  • 打赏
  • 举报
回复
wonderful_abc(海盗)可能理解错我的意思了,不是web头信息,是http的,web头信息中没有来路的信息,不过还是谢谢了
wonderful_abc 2007-09-01
  • 打赏
  • 举报
回复
不好意思,还要去掉"break;"

字符串head即为所求。


软件(源码)详情 http://future-tech.czm.cn
###############################################
提供C#源码、控件、解决方案以及各种系统维护服务。
并承接软件开发、毕业设计等客制化软件专案及定单。
###############################################
wonderful_abc 2007-09-01
  • 打赏
  • 举报
回复
错了,header信息不一定只有一行,所以while程序块改为:
if (!sr.EndOfStream)
{
line = sr.ReadToEnd();
line = line.ToLower();
int index1 = line.IndexOf("<header>");
int index2 = line.IndexOf("</header>");
index1 = index1 + 8;
string head = line.Substring(index1, index2 - index1);
break;
}

软件(源码)详情 http://future-tech.czm.cn
###############################################
提供C#源码、控件、解决方案以及各种系统维护服务。
并承接软件开发、毕业设计等客制化软件专案及定单。
###############################################
wonderful_abc 2007-09-01
  • 打赏
  • 举报
回复
先将网页内容保存为文本,然后读取文本,再找出"<header>"与"</header>"之间的字符串便是WEB 头信息。
using (StreamWriter sw = File.CreateText(localFileTxt))
{
HtmlDocument doc = webBrowser1.Document;
sw.Write(s);
}
string line = "";
using (StreamReader sr = new StreamReader(fs, Encoding.UTF8))
{
while (!sr.EndOfStream)
{
line = sr.ReadLine();
line = line.ToLower();
int index1 = line.IndexOf("<header>");
int index2 = line.IndexOf("</header>");
index1 = index1 + 8;
string head = line.Substring(index1, index2 - index1);
break;
}
}

软件(源码)详情 http://future-tech.czm.cn
###############################################
提供C#源码、控件、解决方案以及各种系统维护服务。
并承接软件开发、毕业设计等客制化软件专案及定单。
###############################################
ahone 2007-09-01
  • 打赏
  • 举报
回复
呵呵 c#别想了 自己在浏览器增加插件吧 我记得有个httpheader 挺好用
hongyu1985 2007-09-01
  • 打赏
  • 举报
回复
网上资料不多,还有哪个高手知道啊
APP开发王 2007-09-01
  • 打赏
  • 举报
回复
除了上面的方法,最简单的是
HttpWebRequest.Referer就是了
saucer 2007-08-31
  • 打赏
  • 举报
回复
好像不容易,但参考

http://www.codeproject.com/cs/miscctrl/csEXWB.asp

110,533

社区成员

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

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

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