2014-03-31 79 views
2

本周我正在学习SAP UI5,并且我意识到即使是Web开发人员也可以使用SAP UI5编写企业移动应用程序。SAP UI5中的HTTP方法

但是我对使用server的数据处理感到困惑。是否SAP UI5应用程序只与使用oData的基于SAP的应用程序通信?

或者我可以使用HTTP方法与RESTful PHP服务器应用程序进行通信吗?

回答

3

内的任何UI5应用程序,你可以使用jQuery的AJAX变得非常容易。

$.ajax({ 
     type: "POST", 
     data: "POST CONTENT DATA" 
     crossDomain: true, 
     url: http://mydomain.coim/service/endpooint, 
     headers: {'key1':'value1','key2':'value2'} 
     contentType: "application/json", 
     success: function (res, status, xhr) { 
      //success code 
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
     console.log("Got an error response: " + textStatus + errorThrown); 
     } 
    }); 
+0

哦..我检查一下。 – devo

5

oData不是SAP专用协议。 ODATA是OpenDataProtocol

ODATA Website

而且SAPUI5有JSON的模型,你就可以使用REST风格的GET数据。但在这种情况下,除GET之外的所有方法都必须由您自己完成。

您可以尝试在你的PHP应用程序来实现ODATA:

OData Producer Library for PHP V1.2

+1

如何使用POST,PUT或DELETE更新表单提交服务器中的数据? – devo

+1

我从第一手经验知道POST的工作也很好。 PUT和DELETE我无法评论,但是如果你使用JSON模型,GET和POST在大多数情况下都是你想要的:) – Qualiture

+1

使用Ajax,你可以真正地与任何你喜欢的东西进行通信。这可以是Java Servlet,PHP Services等。从我尝试到目前为止,我真的很喜欢使用Java Servlet和HTTP方法,如GET,POST,PUT,DELETE。 OData是一个您可以使用的功能,但您并不需要。 –

1

是的,你可以使用基于REST的API,因为sapui5或openui5是由网络技术和它在浏览器中执行。我最近使用sapui5和前端webtechnologies(客户端)开发了基于cordova的移动应用程序。

0

如果您的后端不支持OData。最好的选择是使用loadData(sURL, oParameters?, bAsync?, sType?, bMerge?, bCache?, mHeaders?) : void函数的JSONModel(JSONModel)。确保您在使用loadData之前使用了事件处理程序attachRequestCompleted(oData?, fnFunction, oListener?) : sap.ui.model.Model