在OpenUI5文档中是写成
现在,我们创建一个新的
index.js
脚本,它将包含本教程步骤的应用程序逻辑。出于安全考虑,我们这样做是为了避免在文件中直接使用可执行代码__。这个脚本将由index.html
__调用。我们以声明的方式将其定义为模块。
换句话说,官方的OpenUI5文档建议提取以下代码:
<script>
"use strict";
sap.ui.getCore().attachInit(function () {
new sap.m.Shell("", {
appWidthLimited: false,
app: new sap.ui.core.ComponentContainer("", {
name: "webapp",
height: "100%"
})
}).placeAt("content");
});
</script>
放到单独的JS文件中:
"use strict";
sap.ui.getCore().attachInit(() => {
new sap.m.Shell("", {
app: new sap.ui.core.ComponentContainer("", {
height: "100%",
name: "webapp"
}),
appWidthLimited: false
}).placeAt("content");
});
我很想知道如何将JS代码从HTML页面准确地提取到单独的JS文件中,以提高UI5应用程序的安全性?
发布于 2020-10-17 14:06:32
它看起来在UI5-文件中有一个额外的解释
强烈建议您使您的OpenUI5应用程序CSP兼容-毕竟,您希望您的应用程序是安全的。您必须做的主要工作是删除所有直接从HTML页面执行代码的脚本。 不要在HTML文件中直接使用可执行代码,因为这会使它们易受攻击。相反,在引导脚本中启用
ComponentSupport
模块。然后,通过div
标记在正文中声明所需的组件。这将在执行onInit
时实例化组件。
有关内容安全策略(CSP)的更多详细信息和处理示例:
https://stackoverflow.com/questions/64402834
复制相似问题