SAP Netweaver 上的 IE 10 跨源请求

IE 10 cross origin requests on SAP Netweaver

本文关键字:请求 IE Netweaver 上的 SAP      更新时间:2023-09-26

我正在使用openUI5作为参考来开发我的应用程序(下载了库并在我的应用程序中引用了本地版本)现在我需要在我的应用程序中引用 sap.viz 库,我认为 sap.viz 不是 openUI5 的一部分。

因此,我开始从远程主机引用库,如下所示:

<script id="sap-ui-bootstrap"    
    type="text/javascript"   
    data-sap-ui-libs="sap.ui.commons,sap.ui.table,sap.ui.ux3,sap.m,sap.viz"   
    data-sap-ui-theme="sap_bluecrystal"   
    src="https://sapui5.hana.ondemand.com/resources/sap-ui-core.js">    
</script> 

我已经在SAP MII(基于Netweaver java)上部署了我的应用程序。

该应用程序在IE 0中不起作用,但在Chrome中运行良好。 当我研究它与CORS(跨源请求)有关。我试图使用以下代码定义内容安全策略以忽略它,但它没有帮助.

<meta  http-equiv="Content-Security-Policy" content="script-src 'self' https://sapui5.hana.ondemand.com"/>  
<meta  http-equiv="X-Content-Security-Policy" content="script-src 'self' https://sapui5.hana.ondemand.com"/>  

我使用 http://jsbin.com/cigorepiri/1/edit 创建了示例代码

我在 IE10 中收到的错误是

SCRIPT5022: failed to load 'sap/ui/thirdparty/jquery-mobile-custom.js' from https://sapui5.hana.ondemand.com/resources/sap/ui/thirdparty/jquery-mobile-custom.js: 0 - [object Error]
所以,要么

我需要一个解决方案来忽略IE10,要么需要一种方法来下载sap.viz库。

请指教。

谢谢哈里

使用如下所示的代码配置您的 web.xml。将您的域名包含在com.sap.ui5.proxy.REMOTE_LOCATION下

    <!-- ============================================================== -->
    <!-- UI5 proxy servlet                                              -->
    <!-- ============================================================== -->
    <servlet>
        <servlet-name>SimpleProxyServlet</servlet-name>
        <servlet-class>com.sap.ui5.proxy.SimpleProxyServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>SimpleProxyServlet</servlet-name>
        <url-pattern>/proxy/*</url-pattern>
    </servlet-mapping>
    <context-param>
        <param-name>com.sap.ui5.proxy.REMOTE_LOCATION</param-name>
        <param-value>YOUR DOMAIN (INCLUDE PORT NUMBER if any) </param-value>
    </context-param>