Closed huchaolin closed 1 year ago
不被fetch拦截就无法放入沙箱,效果和在基座中直接引入是一样的
由于第三方文件无法控制,还可以将地图js下载到本地引入
由于第三方文件无法控制,还可以将地图js下载到本地引入
下载到本地不行啊, 因为js里面 还有通过动态创建document.createElement("script")的方式去添加的别的js资源
由于第三方文件无法控制,还可以将地图js下载到本地引入
你们啥事微应用用一下百度地图就知道了, 不是说简简单单放到基座 或者 直接下载下来那么简单。。。
按此操作 do like this: https://github.com/micro-zoe/micro-app/issues/1009
问题描述
微应用内部需要引入第三方资源,如引入以下内容A(百度地图MapVGL) :
上面的A资源返回的内容为 B :
能看到B中有通过
<script>
或<link>
的方式去再次请求非同源的资源的方式, 如何避免内容B中的请求地址不会被基座劫持为fetch请求,而是按原有请求方式引入? 难道只能通过在第三方资源那里加 白名单 或者 自己搭个api中间层进行转发来避免跨域吗(不现实, 因为请求的资源地址是未知的)?ps: 另外我试过将整个资源放到基座去请求, 再在微应用中以window.rawWindow的方式去使用挂载到基座window的方法,虽然没有报错, 但是地图组件并未正常渲染;
复现步骤
环境信息