繁体   English   中英

使用iTextSharp从SharePoint库中读取PDF文件

[英]Reading a PDF File From a SharePoint Library Using iTextSharp

我需要阅读位于SharePoint 2013库中的PDF。

我可以从本地文件夹中读取PDF,但不能从库中读取。

具体来说,我需要在PDF文本中搜索一些关键字,然后根据条件将文件从当前库移动到另一个SharePoint库。

我还发现我从下面的代码中得到一个错误:

PdfReader pdfReader = new PdfReader("http://mysharepointsite.com/MyDocumentLibrary/MyFile.pdf");

错误为“远程服务器返回错误:(401)未经授权。”

任何帮助,将不胜感激。

谢谢!

PdfReader用URL实例化时,它使用System.Net.WebRequest对象,其Credentials设置为CredentialCache.DefaultCredentials ,相关的行( 从此处开始 )如下:

WebRequest wr = WebRequest.Create(url);
wr.Credentials = CredentialCache.DefaultCredentials;
Stream isp = wr.GetResponse().GetResponseStream();

如果PdfReader原样使用PdfReader ,则需要操纵CredentialCache.DefaultCredentials 但是,这是一个只读属性,因此您可能需要实际设置IIS来模拟当前登录的用户。

另一个选择是不使用url方法,而是编写您自己的代码,该代码可以直接访问文件系统,也可以使用您自己的身份验证规则下载文件,然后将该PDF传递给PdfReader构造函数。

最终,这不是iTextSharp问题,而是IIS / SharePoint / .Net问题。 为了排除故障,我们需要知道此代码在什么上下文中运行。 它是Web服务器还是桌面应用程序? 应用程序的上下文是否具有与SharePoint对话的权限?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM