使用webclient时遇到一些问题。
当我尝试时:
var client = new WebClient();
client.Credentials = new NetworkCredential("intranet.homolog", "S3br@32011", "na-sebrae");
var html = client.DownloadData("http://www.intranet.sebrae.com.br/noticias/todas-as-notícias/rss.aspx?estado=");
我收到错误(401)。
此网址返回xml Feed,当我访问浏览器时,我正常登录。
此用户和密码是真实的。
我有一些想法,我用webclient访问它吗?
答案 0 :(得分:1)
这是我的猜测:你误用了NetworkCredential
构造函数
正确的语法是
public NetworkCredential(
string userName,
string password,
string domain
)
第一个用户名,然后是密码,然后是域名 - 你错了。
尝试以下方法:
var client = new WebClient();
client.Credentials = new NetworkCredential("na-sebrae",
"S3br@32011", "intranet.homolog");
var html = client.DownloadData("http://www.intranet.sebrae.com.br" +
"/noticias/todas-as-notícias/rss.aspx?estado=");
答案 1 :(得分:1)
我也得到同样的错误。相同的链接在浏览器中工作得更好,但为WebClient
提供了401异常。
string url = "http://www.intranet.sebrae.com.br/noticias/todas-as-notícias/rss.aspx?estado=";
var webClient = new WebClient();
webClient.Credentials = CredentialCache.DefaultCredentials;
byte[] html = webClient.DownloadData(fileAbsoluteUri);