我想以编程方式从 SharePoint 检索文档的缩略图。我想做的是:
document.GetImagePreviewUrl(width, height, clientType);
这仅返回一个空的ClientResult
。我不确定要输入什么作为 clientType
值。
我也尝试过使用this以编程方式(通过使用 WebClient
并下载文件)。但这只会返回 403
响应。
我在这里看到的可能的解决方案如下:
- 弄清楚要输入的
clientType
内容并以这种方式检索预览网址。 - 弄清楚如何告诉 SharePoint 我已通过编程方式获得授权(例如使用
WebClient
和 header )。
我确实需要有关这两个选项的一些帮助,我不知道从哪里开始,因为这两个选项都没有很好的记录。
最佳答案
我已经找到了一种方法,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);
关于c# - 如何使用 SharePoint CSOM 获取文档预览图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33387858/