我知道我可以在我的文件系统上本地检查文件是否存在:
if(File.Exists(path))
Run Code Online (Sandbox Code Playgroud)
我可以查看特定的远程URL吗?
我试图使用WebClientWinForms应用程序从Web下载文件.但是,我真的只想下载HTML文件.我想要忽略的任何其他类型.
我查了一下WebResponse.ContentType,但它的价值总是如此null.
任何人都知道原因是什么?
我正在尝试使用vb.net中的webrequest类请求" http://www.google.com/?q=random " 这样的页面.我们在防火墙后面,所以我们必须验证我们的请求.我通过添加我的凭据已经通过了身份验证部分.但是一旦它起作用,它似乎进入了一个重定向循环.
有没有人有想法,评论,建议为什么这是?还有其他人遇到过这个问题吗?
Dim loHttp As HttpWebRequest = CType(WebRequest.Create(_url), HttpWebRequest)
loHttp.Timeout = 10000
loHttp.Method = "GET"
loHttp.KeepAlive = True
loHttp.AllowAutoRedirect = True
loHttp.PreAuthenticate = True
Dim _cred1 As NetworkCredential = ... //this is setup
//snip out this stuff
loHttp.Credentials = _cc
loWebResponse = loHttp.GetResponse()
Run Code Online (Sandbox Code Playgroud) 如何检查给定URL上是否存在页面?
我有这个代码:
private void check(string path)
{
try
{
Uri uri = new Uri(path);
WebRequest request = WebRequest.Create(uri);
request.Timeout = 3000;
WebResponse response;
response = request.GetResponse();
}
catch(Exception loi) { MessageBox.Show(loi.Message); }
}
Run Code Online (Sandbox Code Playgroud)
但是这会给出有关代理的错误消息.:(
我试图确定http://www.accreditedqualifications.org.uk上是否存在 以下形式的资格:
http://www.accreditedqualifications.org.uk/qualification/50084811.seo.aspx
50084811是最终用户输入的资格目标.
如果他们输入无效的例如
http://www.accreditedqualifications.org.uk/qualification/50084911.seo.aspx
它们被重定向到错误页面(据我所见,http头不正确).有没有办法检测C#中的重定向.我希望能够检测到http标头中的重定向(认为它将发出2)或类似的反对必须下载整个页面.这可能会发生很多,所以我想尽量减少流量.
编辑
使用它来查看标题看起来像是为无效页面发出两个:
我被教导大部分时间总是从我的代码中删除try/catch/finally块.这背后的原因总是对我有意义(如果你的应用程序以它应该的方式工作,你不需要防止错误),但同时有很多东西可能导致错误,而不是由于差编码; 服务器打嗝,图形似乎永远不会失败,因为没有明显的原因失败,等等.我也被告知这些块可以降低性能,当我使用它时没有我个人注意到,但我想这可能是案件.基本上我得到的是; 尝试/捕获/最后一个糟糕的整体想法或在某些情况下好的另一个好,如果过度使用不良代码以保持应用程序漂浮,有利于测试/生产不好?只想要一些输入.