我想以编程方式从SharePoint检索文档的缩略图。我想要做的是以下几点:
document.GetImagePreviewUrl(width, height, clientType);
这只会返回一个空的ClientResult
。我不确定以clientType
值输入什么。
我还尝试以编程方式使用this方法(使用WebClient
并下载文件)。但这只会返回403
响应。
我在这里看到的可能解决方案如下:
clientType
并以此方式检索预览网址。WebClient
和标头)。我确实需要一些关于这两个选项的帮助,我不知道从哪里开始,因为两个选项都没有很好地记录。
答案 0 :(得分:1)
我已经找到了办法,导致403
错误,因为sharepoint不知道我是谁。经过一些研究和调整后,我发现您发送到预览页面的请求包含一个身份验证cookie。这个cookie可以使用这段代码通过代码生成:
// Create an authentication cookie which we can send with the request so sharepoint knows who we are.
var authCookie = credentials.GetAuthenticationCookie(new Uri(imageUrl));
client.Headers.Add(HttpRequestHeader.Cookie, authCookie);
// Download the image data to a byte array
image = client.DownloadData(imageUrl);