我正在使用WebViewer 2.2.2并尝试在ASP.NET MVC 5视图中显示存储在Azure Blob存储中的XOD文件,网址为:https://somename.blob.core.windows.net/containername/GettingsStarted.xod
我在浏览器控制台中收到CORS错误" 未启用CORS或找不到此请求的匹配规则。"
我找到了启用CORS的网址https://www.pdftron.com/webviewer/demo/tutorials/xdomain.html。我应该在proxy.html文件中提供什么URL,因为Azure BLOB存储中存储的每个XOD blob都有不同的URL。
部分https://somename.blob.core.windows.net/containername/会相同,但对于不同的XOD,文件名会有所不同。那么,我如何在proxy.html文件中传递XOD文件名?
这是处理CORS问题的正确方法https://www.pdftron.com/webviewer/demo/tutorials/xdomain.html还是有另一种更简单的方法?
@model XODViewer.DataModel.Document
@{
ViewBag.Title = "Document";
}
@Scripts.Render("~/bundles/jquery")
<script src="~/lib/WebViewer.min.js"></script>
<style>
#viewer {
width: 1024px;
height: 600px;
}
</style>
<script>
$(function () {
var viewerElement = document.getElementById('viewer');
var myWebViewer = new PDFTron.WebViewer({
path: 'lib',
type: 'html5',
documentType: "xod",
initialDoc:"https://somename.blob.core.windows.net/containername/GettingsStarted.xod",
config: '../../lib/WebViewerConfig.js',
streaming: true,
enableAnnotations: false,
enableOfflineMode: false,
enableReadOnlyMode: true,
azureWorkaround: true
}, viewerElement);
});
</script>
<div id="viewer"class="xod-viewer-div">
</div>
答案 0 :(得分:1)
根据您的描述,我按照此tutorial开始使用WebViewer。我可能会遇到与您提到的相同的错误,如下所示:
{{1}}
对于跨域访问,您可以利用Microsoft Azure Storage Explorer配置CORS设置,如下所示:
<强>结果强>