Uri uri = new Uri(@"http://www.ip138.com/ip2city.asp");
System.Net.WebRequest wr = System.Net.WebRequest.Create(uri);
System.IO.Stream s = wr.GetResponse().GetResponseStream();
以前一直是可以得到外网IP的,最近就不行,提示 "服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF"但是当先在浏览器访问 http://www.ip138.com/ip2city.asp 后,程序就能正常运行,并且访问其他显IP网址也可以,不知道要改哪了
System.Net.WebRequest wr = System.Net.WebRequest.Create(uri);
System.IO.Stream s = wr.GetResponse().GetResponseStream();
以前一直是可以得到外网IP的,最近就不行,提示 "服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF"但是当先在浏览器访问 http://www.ip138.com/ip2city.asp 后,程序就能正常运行,并且访问其他显IP网址也可以,不知道要改哪了
解决方案 »
- 求正则表达式
- 如何从一个html原代码中分析出所有的连接?
- WEB进程与.NET windows服务通信权限
- B窗体的事件中更改A窗体中控件的属性,我这样做有什么不对?(winform)
- 请教:使用.NET提供的WEB安装程序,能否指定虚拟文件夹的目录?
- 有谁知道dataset与datagrid的关系?
- 如何用Type(反射)来遍历某个控件(以TextBox为例)的所有的属性或事件或方法的名称???(WINFORM下的)
- 我在asp.net里执行一个应用程序(非.net开发)为什么老报错?让他独立运行就没事
- 怎样用c#制作程序的启动画面?
- 我的弱智问题
- Microsoft Visual Studio 2008窗体开不开
- 关于数据库连接问题
System.Net.WebRequest wre = System.Net.WebRequest.Create(uri);
System.IO.Stream s = wre.GetResponse().GetResponseStream(); StreamReader srd = new StreamReader(s);
string res2 = srd.ReadToEnd();
res2中得到的是
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<title> ����IP��ַ </title>
</head>
<body style="margin:0px"><center>����IP��ַ�ǣ�[203.110.131.5] </center></body></html>
乱码是因为我这里是英文系统
Uri uri = new Uri(strUrl);
WebRequest wr = WebRequest.Create(uri);
Stream s = wr.GetResponse().GetResponseStream();
StreamReader sr = new StreamReader(s, Encoding.Default);
string all = sr.ReadToEnd(); //读取网站的数据 int start= all.IndexOf("[") + 1;
int end=all.IndexOf("]",start);
string tempip = all.Substring(start, end - start);
Console.WriteLine(tempip); sr.Close();
s.Close();
Console.ReadLine();
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
允许系统容忍(tolerant)只以CR或LF结尾的hearder信息 方法二: 用于winform中,在Debug文件夹里新建一个文件名为:APPNAME.exe.config 的文件,APPNAME为应用程序的名字,然后用记事本打开,添加以下内容即可:<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
运行就会提示配置文件错误,无法启动,重新编译也不行,这文件没研究过,不知道哪不对了,要不要添加到项目中什么的,我的是WinForm NET2.0 VS2008 XP IE6.0