SAP Fiori客户端代理错误/由SOP引起?

时间:2018-06-03 17:07:38

标签: proxy sapui5 same-origin-policy

我在SCP Web IDE上开发了一个应用程序,该应用程序已发布到测试启动板。它使用 OData服务 CUAN_IMPORT_SRV。当我在桌面上运行应用程序时一切都很好。我可以在yMarketing中创建交互。

由于我的应用程序使用条形码功能,我需要在移动设备上使用此应用程序。因此,我将应用程序添加到测试Fiori启动板,并尝试通过SAP Fiori客户端访问启动板。为OData模型定义的URL的主机名不可公开。

这里我定义了OData模型:

var uname = "myuser";
var pw = "mypassword";

var oModel = new sap.ui.model.odata.v2.ODataModel("https://hostname:port/sap/opu/odata/sap/CUAN_IMPORT_SRV/", true, uname, pw)

访问服务器需要代理+ VPN。

1)首先,我尝试使用已配置的代理和正在运行的VPN 连接在Fiori客户端应用中打开启动板。这样,我无法访问测试启动板。这是我的错误日志(我在每一步后清除日志):

error log with configured proxy and a running VPN

  

无法找到页面。

2)我接下来尝试的是关闭代理。我登录了我的SCP帐户。我现在可以看到启动板,但我的应用程序不可见。这是新日志:

error log with proxy turned off

3)我删除设置,再次输入启动板URL,输入我的SCP用户名和密码。该应用程序现在可见。我对此步骤的记录:

after deleting settings

4)启动应用程序(代理仍然关闭)

  

找不到具有此主机名的服务器

start app without proxy

5)启用代理,运行应用程序,我需要使用我的服务器登录进行身份验证:

server authentication

6)当服务器的 CRUD-Operation 完成后,日志会显示:

CRUD error log

这可能是跨学科的问题吗?在flpportal ...(测试启动板)上运行的应用程序和我尝试访问的数据在其他主机上。当我在浏览器(HAT,Cordova Facade)中尝试它时,我只是通过使用--disable-web-security --user-data-dir启动浏览器来忽略SOP(这对于测试场景很有效)。但是,我猜ProxyServlet或反向代理不会使它更好,因为它们也仅用于测试目的。这意味着将该应用程序与SAP Fiori Client一起使用的唯一方法是将其部署到ABAP repo并从与所请求的数据相同的来源运行它?

我真的希望有人可以帮我解决我的问题。 非常感谢你!

1 个答案:

答案 0 :(得分:0)

我可以找出问题所在。正如预期的那样,这是一个跨学科的问题。由于应用程序已部署到服务器并添加到启动板,因此一切正常。