我正在使用webclient调用我网站上的一个页面。我试着把网页的结果放到pdf中,所以我试着得到渲染页面的字符串表示。问题是请求没有经过身份验证,所以我得到的只是一个登录屏幕。我已经将UseDefaultCredentials属性发送给true,但仍然得到相同的结果。下面是我的代码的一部分:
WebClient webClient = new WebClient();
webClient.Encoding = Encoding.UTF8;
webClient.UseDefaultCredentials = true;
return Encoding.UTF8.GetString(webClient.UploadValues(link, "POST",form));发布于 2009-12-11 04:17:46
您使用的是哪种身份验证?如果是表单身份验证,那么最多只能找到.ASPXAUTH cookie并在WebClient请求中传递它。
在最坏的情况下,它不会工作。
发布于 2009-12-11 04:15:05
您需要为WebClient对象提供凭据。就像这样..。
WebClient client = new WebClient();
client.Credentials = new NetworkCredential("username", "password");发布于 2011-11-05 23:23:48
Public Function getWeb(ByRef sURL As String) As String
Dim myWebClient As New System.Net.WebClient()
Try
Dim myCredentialCache As New System.Net.CredentialCache()
Dim myURI As New Uri(sURL)
myCredentialCache.Add(myURI, "ntlm", System.Net.CredentialCache.DefaultNetworkCredentials)
myWebClient.Encoding = System.Text.Encoding.UTF8
myWebClient.Credentials = myCredentialCache
Return myWebClient.DownloadString(myURI)
Catch ex As Exception
Return "Exception " & ex.ToString()
End Try
End Functionhttps://stackoverflow.com/questions/1883655
复制相似问题