
下面是本單元視訊講解的中文字幕,均由 Jerry 人工翻譯而成。
====
歡迎大家來到 Open SAP Fiori Elements 公開課第三單元。本單元介紹 OData 和注解
我是 Stefan Engelhardt, 是 SAP Fiori Elements 的開發架構師
在第二單元,Marcel 已經簡單介紹了 OData. 每個 Fiori Elements 應用都需要一個 OData 服務
Fiori Elements 對 OData 服務的背景技術棧沒有特殊要求,因為 OData 協定本身就是對背景實作細節的抽象
包含使用者名,FirstName 等字段
中繼資料中屬性也具有進一步的定義
這些進一步的定義包含屬性的資料類型,比如 Edm.String, 是否允許存儲 null 值,字段最大長度等
描述實體與其他實體關系的字段被稱為導航字段
模型的導航字段指明了模型和其導航目标模型的基數關系,即"一對一"還是"一對多"
例如螢幕中名為 Trips 的導航屬性,指向的目标模型 Trip,類型是 Collection, 說明 Person 和 Trip 兩個模型是一對多的關系
此外,中繼資料還可以包含複雜類型,actions 和 singleton 等等的定義
Marcel 在上一個單元中已經介紹過,OData 支援增删改查操作
讓我們來看一些例子
這裡我們能看到對一個 OData 服務發起的 HTTP 請求和響應
第一個場景是讀取所有的 People. People 的類型是 Person, 定義在中繼資料裡
HTTP 響應包含對應的資料集。結果清單裡的第一條記錄是 Russell Whyte
我們還可以通過指定 key, 來查詢某條特定的 Person 記錄
把鍵值 russellwhyte 添加到花括号裡,在響應中您可以看到, 該請求隻傳回了一條對應的資料
讓我們再來看看一些更複雜的查詢
使用 $top,隻傳回前兩條記錄。使用 $select, 隻讀取 FirstName 和 LastName 字段
對結果集再次過濾,條件為至少擁有一條 Trip 記錄,且費用超過3000
如大家看到的, 我們可以非常靈活地構造複雜查詢語句
現在展示如何建立一條 Person 記錄
使用 HTTP POST 請求,在請求正文中維護 Person 資料
響應傳回 HTTP 201 狀态碼,表明資料建立成功
我們也學習了什麼是 OData 注解,以及它是如何影響 Fiori Elements 應用的
現在大家可以期待下一單元的内容了。屆時我們将介紹如何搭建 Fiori Elements 應用的開發環境。感謝收看本視訊,下期再見