我很努力地找出解決方案,當我啓動我的sapui5應用程序,然後基於manifest.json配置應用程序應該啓動模擬服務器時,沒有連接OData其他調用OData服務。現在我有mockserver.html開始模擬服務器和index.html的應用程序。SAPUI5 - 模擬服務器自動備用配置
這是甚至可能我在問什麼?
感謝
我很努力地找出解決方案,當我啓動我的sapui5應用程序,然後基於manifest.json配置應用程序應該啓動模擬服務器時,沒有連接OData其他調用OData服務。現在我有mockserver.html開始模擬服務器和index.html的應用程序。SAPUI5 - 模擬服務器自動備用配置
這是甚至可能我在問什麼?
感謝
的模擬服務器攔截你在模擬服務器實例的specifing的URL。 只需檢查OData服務的可用性,並且如果您的服務不可用,則可以實例化模擬服務器。
sap.ui.define([
"sap/ui/core/util/MockServer",
"sap/ui/model/odata/v2/ODataModel"
], function(MockServer, ODataModel) {
"use strict";
return {
init: function() {
var oDataModel = new ODataModel("<your OData URL here>");
oDataModel.attachMetadataFailed(function() {
console.log("Metadata load failed :(");
/* Initialize mock server */
MockServer.config({
autoRespond: true
});
var oMockServer = new MockServer({
rootUri: "<your OData URL here>"
});
oMockServer.simulate("path/to/metadata.xml", {
sMockdataBaseUrl: "path/to/mockdata",
bGenerateMissingMockData: true
});
oMockServer.start();
});
}
};
});
我沒有任何時間來測試我的解決方案,但它應該以這種方式工作。
如果OData服務可用,那麼它是如何從上面的init函數出來的?我沒看到成功會發生什麼?我錯過了什麼嗎? – user557657
成功時,不會執行'attachMetadataFailed()'函數,因此不會實例化模擬服務器。 – marcelbrueckner
[marcelbrueckner](http://stackoverflow.com/users/5995009/marcelbrueckner) - 標記你 – user557657