【问题标题】:iTextSharp - Generate PDF file - The remote server returned an error: (407) Proxy Authentication RequirediTextSharp - 生成 PDF 文件 - 远程服务器返回错误:(407) 需要代理身份验证
【发布时间】:2013-12-09 10:28:34
【问题描述】:

我在下面的代码片段中遇到代理身份验证问题。

file = [FILEPATH]
htmlData = [HTML CONTENTS]

System.IO.StringReader objReader = default(System.IO.StringReader);
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
HTMLWorker htmlparser = default(HTMLWorker);

objReader = new System.IO.StringReader(htmlData);
FileStream fsTest = new FileStream(file, FileMode.Create, FileAccess.ReadWrite);

htmlparser = new HTMLWorker(pdfDoc);

PdfWriter.GetInstance(pdfDoc, fsTest);

pdfDoc.Open();
htmlparser.Parse(objReader);
pdfDoc.Close();

我不确定这是 iTextSharp 问题还是我需要在代码级别进行一些身份验证? 请提出建议。

详细错误:

The remote server returned an error: (407) Proxy Authentication Required. || System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required. at System.Net.HttpWebRequest.GetResponse() at iTextSharp.text.Image.GetInstance(Uri url) at iTextSharp.text.html.simpleparser.HTMLWorker.StartElement(String tag, Dictionary`2 h) at iTextSharp.text.xml.simpleparser.SimpleXMLParser.Go(TextReader reader) at AppWeb.AssetActions.GeneratePDFFromHTML(String htmlData, String file) || at System.Net.HttpWebRequest.GetResponse() at iTextSharp.text.Image.GetInstance(Uri url) at iTextSharp.text.html.simpleparser.HTMLWorker.StartElement(String tag, Dictionary`2 h) at iTextSharp.text.xml.simpleparser.SimpleXMLParser.Go(TextReader reader) at.

【问题讨论】:

  • 检查您的 [FILEPATH] 变量。是否是远程位置(例如“\\SERVER1\PATH1”)可能需要身份验证?
  • 是的,我检查了它而不是远程路径。它是 Server.Mappath(...)
  • 但是无论值是什么,您是否确定它是指本地路径(如 C:\ 或 D:\)?如果没有,则让它将值写入响应流并检查它。
  • 在这种情况下,您应该检查您的 html 数据。我的感觉是,当您说 htmlparser.Parse() 时,html 数据可能包含一些外部链接并被调用
  • 所以,获取您的 html 数据,找到这些链接并尝试在您的浏览器中手动访问其中的一些。

标签: c# authentication proxy itextsharp html-to-pdf


【解决方案1】:

正如我所评论的,您应该检查 htmlData 字符串中的每个 url。您需要确保 .NET 程序集可以访问每个 url 而没有任何代理错误。 还要搜索模板引擎使用的任何解析标签。以下是我想到的一些:

<? ?> - php
<?php ?> - php
<?= ?> - php
<% %> - asp, asp.net, php
<%= %> - asp, asp.net, php
<< >> - webapp2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多