我正在使用 Microsoft Graph 预览存储在 SharePoint 中的项目。
我尝试了driveItem: preview API,我得到了这样的 URL 返回:
https://{domain}.sharepoint.com/_layouts/15/embed.aspx?uniqueId={guid}&access_token=eyJ0eXAiOiJKV...
但是当我将它渲染成 a 时div
,它会显示这个错误:
“嗯......看起来这个文件没有我们可以显示的预览”
以下是.aspx
页面中的代码:
function OpenDocument(fileURL, filename) {
var path = filename;
var ext = path.substring(path.lastIndexOf(".") + 1, path.length).toLowerCase();
var object = "<object data=\"{FileName}\" class=\"{CP}\">"; //Add class if PDF file is uploaded
object += "If you are unable to view file, you can download from <a href=\"{FileName}\" target = \"_blank\">here</a>";
object += " or download <a target = \"_blank\" href = \"http://get.adobe.com/reader/\">Adobe PDF Reader</a> to view the file.";
object += "</object>";
object = object.replace(/{FileName}/g, fileURL);
var iframe = '';
if (ext == 'pdf') { //Add class if PDF file is uploaded
object = object.replace(/{CP}/g, "clsPdf"); //G16052017
$("#dialogContent").html(object);
}
else {
iframe += "<embed src='" + fileURL + "' />";
$("#dialogContent").html(iframe);
}
ShowDocumentPopup();
return false;
}
我还将预览 URI 传递给了一个嵌入的标签,iframe
但没有成功。
这是 HTML 呈现问题还是 SharePoint 在显示图像预览方面有一些限制?
注意:我添加了一个假的预览 URL 供您参考,只是为了向您展示 Preview API 发送的 URL 的格式。