建立REST SOE的schema
方法CreateRestSchema()對於建立REST SOE是很重要的。在這個方法中,你將為你的服務建立schema,表明SOE支援哪些資源與操作。
a.對於每個資源,你將定義一個RestResource。
b.對於每個操作,你將定義一個RestOperation。
一旦你定義了所有的資源與操作,呼叫資源和操作的 Add()方法以便建立schema。
[C#]
private RestResource CreateRestSchema()
{
RestResource rootRes = new RestResource(soe_name, false, RootResHandler);
RestOperation sampleOper = new RestOperation("sampleOperation", new string[]
{
"parm1", "parm2"
}
, new string[]
{
"json"
}
, SampleOperHandler);
rootRes.operations.Add(sampleOper);
return rootRes;
}
[VB.NET]
Private Function CreateRestSchema() As RestResource
Dim rootRes As New RestResource("RestSOE1", False, AddressOf RootResHandler)
Dim sampleOper As New RestOperation("sampleOperation", New String() {"parm1", "parm2"}, New String() {"json"}, AddressOf SampleOperHandler)
rootRes.operations.Add(sampleOper)
Return rootRes
End Function
在上面的schema中,你獲得了一個資源rootRes。該資源中包含一個操作sampleOper。
當你建立一個RestResource或一個RestOperation的時候,你可以傳遞一個可選引數capabilities名稱。capabilities是一組資源和操作,這樣伺服器管理員可以方便的統一管理該組資源和操作啟用或者不啟用。
需要注意的是,當你在ArcCatalog中開啟服務編輯對話方塊或在Manager中編輯服務的時候,capabilities會顯示為“允許的操作”字樣。
不要將SOE的capabilities和對話方塊中可進行勾選的"Capabilities"進行混淆。對話方塊中的“Capabilities”指的是SOEs本身。
模板中的程式碼沒有定義任何的capabilities,但是你可以在REST示例Find Near Features中檢視如何使用capabilities。
建立一個schema就像搭積木直到你建立了最終的高樓大廈。首先從schema中最深層次開始,為每一層級新增資源和操作,如此繼續,直到根級別,這樣你就建立了一個完整的schema。這一過程在模板中沒有展現出來,因為模板程式碼僅僅展示了一個資源和操作被建立的過程。不過你會在SDK的示例中檢視更復雜的schema的建立過程。
相關文章
- 3、Spring Cloud Rest工程建立(通過IDEA建立)SpringCloudRESTIdea
- 用ASP.NET Core 2.1 建立規範的 REST API -- HATEOASASP.NETRESTAPI
- Redshift建立外部架構external schema和外部表external table架構
- Json Schema簡介和Json Schema的.net實現庫 LateApexEarlySpeed.Json.SchemaJSON
- 表的schema 檔案
- 到底什麼樣的 REST 才是最佳 REST?REST
- Elepy,快速建立一個定製的網站和Rest API生成器網站RESTAPI
- 用ASP.NET Core 2.0 建立規範的 REST API -- 預備知識ASP.NETRESTAPI
- information_schema的結構ORM
- oralce schema 的設計意思
- 用ASP.NET Core 2.0 建立規範的 REST API -- DELETE, UPDATE, PATCH 和 LogASP.NETRESTAPIdelete
- 用ASP.NET Core 2.1 建立規範的 REST API -- 保護API和其它ASP.NETRESTAPI
- 用ASP.NET Core 2.1 建立規範的 REST API -- 快取和併發ASP.NETRESTAPI快取
- MySQL Performance SchemaMySqlORM
- API Schema in kubernetesAPI
- Understanding JSON SchemaJSON
- PostgreSQL:Schema 管理SQL
- 用ASP.NET Core 2.1 建立規範的 REST API -- 翻頁/排序/過濾等ASP.NETRESTAPI排序
- 微服務架構專案實戰:Spring Boot 如何建立簡單的 REST 服務微服務架構Spring BootREST
- Rest微服務的分包分模組的建立Maven_微服務消費者(對外訪問)REST微服務Maven
- XML Schema定義XML
- RadioGroup 在TS schema 中的設定
- pt-online-schema-change和XtraBackup的
- REST StreamingREST
- rest apiRESTAPI
- REST APIsRESTAPI
- Salesforce LWC學習(三十五) 使用 REST API實現不寫Apex的批量建立/更新資料SalesforceRESTAPI
- Spring中的REST分頁SpringREST
- REST與GraphQL的爭論REST
- @ngrx入坑angular的schema,爽的一逼!Angular
- MySQL Performance Schema詳解MySqlORM
- 用ASP.NET Core 2.0 建立規範的 REST API -- 預備知識 (2) + 準備專案ASP.NETRESTAPI
- Rest-AssuredREST
- 關於RESTREST
- Django REST Framework中的Serializer relationsDjangoRESTFramework
- 英文短句“xxx for the rest of us”的意思REST
- rest_framework django 簡單使用(資料庫建立資料, 覆蓋資料, 其他的大同小異)RESTFrameworkDjango資料庫
- 深入淺出 FlatBuffers 之 Schema
- information_schema.innodb_metrics表ORM