由于"501(未实现)",元数据的初始加载失败

kul*_*t k 3 odata sapui5

我正在尝试使用Northwind R/W OData服务链接:

http://services.odata.org/V3/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc/ as

proxy/http/services.odata.org/V3/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc
Run Code Online (Sandbox Code Playgroud)

这对本地测试工作正常.现在,当我想将它ftp到我的域名时,它不起作用......

NetworkError:404 Not Found - http:// {mydomain} /proxy/http/services.odata.org/V3/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc/$metadata

使用它无需代理就像http://services.odata.org/V3/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc/给误差

NetworkError:501未实现

码:

onInit: function() {
  var serviceUrl = "http://services.odata.org/V3/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc/";
  var oModel = new sap.ui.model.odata.ODataModel(serviceUrl);
  oModel.oHeaders = {
    "DataServiceVersion": "3.0",
    "MaxDataServiceVersion": "3.0"
  }
  sap.ui.getCore().setModel(oModel, "products");
}
Run Code Online (Sandbox Code Playgroud)

sak*_*thi 6

当你使用Northwind时,我相信它只适用于开发.因此,您可以使用https://cors-anywhere.herokuapp.com/访问跨源资源.

var oModel = new ODataModel({
  serviceUrl: "https://cors-anywhere.herokuapp.com/https://services.odata.org/V2/(S(frik5l2zde0sxh4jiifyhqo4))/OData/OData.svc/"
});
Run Code Online (Sandbox Code Playgroud)

或者另一种方法是禁用chrome中的安全标志以进行开发.