OData 服务身份验证与 SAP 网关服务 OpenUI5

OData service authentication with SAP Gateway service OpenUI5

我有一项服务 url 如下

http://<hostName>:2020/sap/opu/odata/sap/ZTEST_SRV$metadata

当我从 Chrome 浏览器调用它时,我要求输入用户名和密码,如果我提供用户名和密码,它将显示 XML 以及该服务中的所有实体集 URL

但是在代码中如果我创建实例

var model = new sap.ui.model.odata.v2.ODataModel("http://<hostName>:2020/sap/opu/odata/sap/ZTEST_SRV/",true,'username','password');

它显示 401 错误

我该如何解决这个问题?

我的应用程序未部署在 ABAP 存储库或 Fiori 中,这是部署在 Tomcat

上的其他主机中

我不确定参数的正确顺序;您可以尝试将它们作为地图提供,即

var model = new sap.ui.model.odata.v2.ODataModel("http://<hostName>:2020/sap/opu/odata/sap/ZTEST_SRV/", { 
    json     : true,
    user     : "<username>",
    password : "<password>"
});

此外,比较两个请求(有效的基本身份验证以及来自 ODataModel 实例化代码的请求)

您的服务是否支持 OData V2?

我们可以通过两种方式解决这个问题

1:我们可以使用SimpleProxyServlet

2 使用 Apache HTTP Server

建立 Reverse Proxy