如何在Eclipse WebApp预览中运行的SAPUI5应用程序中定义SAP mandant/客户端号?

如何在Eclipse WebApp预览中运行的SAPUI5应用程序中定义SAP mandant/客户端号?,sapui5,sap-basis,netweaver,Sapui5,Sap Basis,Netweaver,使用Eclipse针对SAPUI5的开发工具,可以在WebApp预览模式下运行SAPUI5应用程序。除了一分之外,一切都很好 OData服务中使用的客户端数据在默认情况下始终为“100”。 我假设使用的客户端是用于存储库设置的客户端 但是对于测试,由于维护了测试数据,我必须使用不同的客户端(200) 由于SAPUI5 1.26.9和相应的开发工具,它似乎可以工作,在SAP NetWeaver Gateway上定义默认客户端,但在升级到1.28.x之后,大部分时间使用客户端100 现在我正在搜索文

使用Eclipse针对SAPUI5的开发工具,可以在WebApp预览模式下运行SAPUI5应用程序。除了一分之外,一切都很好

OData服务中使用的客户端数据在默认情况下始终为“100”。 我假设使用的客户端是用于存储库设置的客户端

但是对于测试,由于维护了测试数据,我必须使用不同的客户端(200)

由于SAPUI5 1.26.9和相应的开发工具,它似乎可以工作,在SAP NetWeaver Gateway上定义默认客户端,但在升级到1.28.x之后,大部分时间使用客户端100

现在我正在搜索文档以查找该问题,但找不到任何内容。当然,一个问题是搜索词“客户机”根本帮不上忙

我也不会硬编码任何客户机号码,因为在真正的系统中,登录的客户机将自动使用

但是在WebApp预览中,我不会被要求提供客户端


也许这是问这个问题的错误地方?在这种情况下,我将删除它。

您能在URL中有一个参数并将其链接到检索您的serviceUrl吗?
也许你可以有一个URL参数,并以此为基础,你可以2个服务URL的一个硬编码值为client 200,另一个没有任何东西。 您可以检索参数:

jQuery.sap.getUriParameters().get("test-mode") === "true";
要在OData服务定义中硬编码客户端,请执行以下操作:

var sUrl = "proxy/protocol/server:port/pathToService?sap-client=600";
var oModel = new sap.ui.model.odata.ODataModel(sUrl,true)

您可以使用
sap客户端
GET
-参数。当您使用SAP门户或SAPGUI时,此文件将自动传递给您的应用程序


ODataModel
将其自身传递给数据服务。

当您调用模型对象时,可以将一些头变量传递给“指向”右侧sap客户端

    // Set the client header variable
    var oHeaders = {'sap-client': '120'};
    var bCSRF = "true";
    var oModel = sap.ui.model.odata.ODataModel(serviceURL, true, "user", "pass", oHeaders, bCSRF, false, false, "", false);
    sap.ui.getCore().getModel(oModel, 'gAppModel')
您可以使用REST客户端(如Postman)测试需要哪些头变量


可以在API中找到OData构造函数的详细信息-

是否有办法在OData服务定义中硬编码客户端?尚未找到如何使用?var sUrl=“proxy/protocol/server:port/pathToService?sap client=600”;var-oModel=new-sap.ui.model.odata.ODataModel(sUrl,true)****我使用默认的代理servlet来解决跨源问题****