在使用清单文件之前,我曾经将自定义标头添加到我的 oData 模型的配置中。现在从 SAPUI5 1.30 开始,Component.js 正在使用清单文件,一旦运行时进入 Component.js init() 函数,模型就已经加载,并且已经向我的服务发出了第一个请求。我需要一种在运行时和对我的服务发出第一个请求之前设置自定义标头的方法。
前:
// The service URL for the oData model
var oServiceConfig = this.getMetadata().getConfig().serviceConfig;
var sServiceUrl = oServiceConfig.serviceUrl;
// the metadata is read to get the location of the i18n language files later
var mConfig = this.getMetadata().getConfig();
this._routeMatchedHandler = new sap.m.routing.RouteMatchedHandler(this.getRouter(), this._bRouterCloseDialogs);
// create oData model
this._initODataModel(sServiceUrl);
// _initODataModel function
headers = {custom: 'hello world'};
var oConfig = {
metadataUrlParams: {},
json: true,
// loadMetadataAsync : true,
defaultBindingMode: "OneWay",
defaultCountMode: "Inline",
useBatch: true,
headers: headers
};
var oModel = new sap.ui.model.odata.ODataModel(sServiceUrl, oConfig);
this.setModel(oModel);