我们正在使用 Graph API 在面向公众的 Web 应用程序中显示我们的本地共享点文件。Web 应用程序的用户抱怨 powerpoint 文件中的评论很重要,他们无法通过我们的应用程序看到这些(我们使用图形的预览 url 向他们显示文件。)
没有要求他们下载文件副本以自己在 PowerPoint 中打开(我们的利益相关者不希望用户能够下载我们文件的副本),有没有办法通过查看器实现这一点?
如果我们使用来自 graph-api 的 webUrl 属性,这将在 Office 365 PowerPoint Web 应用程序中打开 sharepoint 上的文件,允许查看幻灯片评论,但这不适用于用户,因为他们没有我们的帐户场所共享点,因此此时将提示登录我们的共享点站点(我们不希望他们在这里拥有帐户。)
当前代码(简化)是:
<a href='#' onclick="LoadFilePreview('{sharepoint-item-id-goes-here}')>Click here to view the slideshow</a>
和js:
function LoadFilePreview(itemId) {
var auth = $("#authToken").val();
var graphUrl = "https://graph.microsoft.com/v1.0/sites/" + siteId + "/drive/items/" + itemId + "/preview";
$.ajax({
type: "POST",
url: graphUrl,
dataType: 'json',
headers: { "Authorization": "Bearer " + auth },
accept: "application/json"
}).done(function (data) {
window.open(data.getUrl);
}).fail(function (e) {
ajaxFailed(e.status, LoadFilePreview, itemId);
});
}