背景 - 具有用户身份验证的 ASP .Net 站点。页面是带有网格视图、面板、文本框、标签、表格等的常规 HTML
我正在尝试使用免费的 iText dll 将用户正在查看的当前网页转换为 PDF。
我有以下代码,我认为可以解决问题:
Dim myRequest As HttpWebRequest = HttpWebRequest.Create(Request.Url)
myRequest.Credentials = New NetworkCredential("administrator", "password")
myRequest.Method = "GET"
Dim myResponse As WebResponse = myRequest.GetResponse
Dim sr As New StreamReader(myResponse.GetResponseStream, System.Text.Encoding.UTF8)
Dim result As String = sr.ReadToEnd
sr.Close()
myResponse.Close()
HTMLToPDF(result) ' "This line sends the HTML to be converted into a PDF"
不幸的是,这显示了带有一些文本的登录页面(文本是 //if (typeof(Sys) === 'undefined') throw new Error('ASP.NET Ajax client-side framework failed to load.'); // .style1 { 宽度:100%;} .style2 { 宽度:334 像素;} .style3 { 宽度:303 像素;})
由于该站点正在使用身份验证,我认为发生的事情是在发出请求时它需要用户名和密码,但正如您从上面的代码中看到的那样,我正在发送用户名和密码以查看它是否可以工作但它不是。
任何人都可以提出解决此问题或其他解决方法的方法吗?