【发布时间】:2017-01-26 17:51:14
【问题描述】:
我在使用 FtpWebRequest-Class 时发现了一个奇怪的行为。我想创建一个 FtpWebRequest 从德国气象服务处获取一些数据。所以我做某事。像下面这样:
var request = (FtpWebRequest)WebRequest.Create(requestUri);
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
request.Credentials = Credentials;
var response = request.GetResponse() as FtpWebResponse;
使用此代码,我收到以下错误:
远程服务器返回错误:(407) Proxy Authentication 必填
这很清楚,我认为添加代理可以解决这个问题,但是我发现了一些奇怪的东西。此代码有效:
var request = (FtpWebRequest)WebRequest.Create(requestUri);
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
request.Credentials = Credentials;
request.Proxy = null;
var response = request.GetResponse() as FtpWebResponse;
有人可以解释一下吗?我使用调试器来保存代理在这两种情况下都是空的。为什么我在第二种情况下没有收到错误消息,反之亦然?
【问题讨论】: