C# flexpaper跨服务器访问swf不显示问题

点点圈 提交于 2019-11-27 04:47:13

在项目中使用flexpaper.html在线预览时,发现文件存放在本地localhost能访问,在服务器上的无法访问,通常报错“loadswf() is not defined”

研究发现是跨域问题导致的,网上搜到如下两个解决方案:

方案一:

在远程服务器根目录下新建一个文件名为"crossdomain.xml"的跨域文件。

<?xml version="1.0"?>
<!-- http://www.aeroflash.org/crossdomain.xml -->
<cross-domain-policy>
   <allow-access-from domain="*" />
</cross-domain-policy>

方案二:(参考https://blog.csdn.net/sinat_25926481/article/details/51924412)

把flexpaper插件的FlexPaperViewer.swf文件放置在文件服务器可以访问的地方,然后在页面上引用外部服务器的这个文件

</script>

var fp = new FlexPaperViewer( 
'http://10.231.1.1/FlexPaperViewer',
'viewerPlaceHolder', { config : {
SwfFile : escape('${filePath}'),
Scale : 0.6, 
ZoomTransition : 'easeOut',
ZoomTime : 0.5,
ZoomInterval : 0.2,
FitPageOnLoad : true,
FitWidthOnLoad : false,
PrintEnabled : true,
FullScreenAsMaxWindow : false,
ProgressiveLoading : true,
MinZoomSize : 0.2,
MaxZoomSize : 5,
SearchMatchAll : false,
InitViewMode : 'Portrait',

ViewModeToolsVisible : true,
ZoomToolsVisible : true,
NavToolsVisible : true,
CursorToolsVisible : true,
SearchToolsVisible : true,

localeChain: 'zh_CN'
}});
</script>

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!