Chrome弃用data URI未转义#,会影响我的OpenUI5路由应用吗?
你的OpenUI5应用不会受这次Chrome变更影响
别担心,你遇到的Chrome M67关于#字符的弃用通知,完全不会影响你的OpenUI5路由场景,核心原因是这两个#的使用场景根本不是一回事:
- Chrome这次禁用的是data URI主体内容里的未转义
#。举个例子,如果你用了类似data:text/html,<p id=my#para>测试</p>这样的data URI,这里面的#没有转义成%23,才会被限制。这种场景和你的单页应用路由完全不搭边。 - 你的OpenUI5应用里的
#是URL的hash片段标识符,也就是http://pathOfMyApp/index.html#/line/14/product/A1B2C3里的#,这是HTTP URL标准里的合法组成部分,专门用来实现单页应用的路由导航(或者页面内锚点跳转)。Chrome不仅不会禁用这种用法,反而一直是SPA路由方案的核心支持项。
另外,OpenUI5的路由系统本身就是基于URL hash来设计的,这是行业内单页应用的通用实现方式,和这次Chrome针对data URI的变更没有任何关联。你完全不需要修改现有代码,除非你的应用里同时使用了带有未转义#的data URI,那才需要把对应的#替换成%23。
内容的提问来源于stack exchange,提问作者padibro
相关产品推荐
相关产品推荐

