XML-RPC 在Subtext中應用。
先來回顧下XML-RPC的定義:
XML-RPC:是一套標准和一系列的應用,它允許在不同操作系統運行、不同環境下基於Internet的遠程過程調用。
這個調用是基於HTTP協議傳輸、XML作為數據載體的。
下面結合Subtext中來說明下。
Subtext中有兩處應用XML-RPC,一處是MetaWeblogAPI,另外一處是PingBack。
處理XML-RPC有兩個地方需要注意,一個是XML-RPC的服務器端,一個是XML-RPC的客戶端。
XML-RPC客戶端部分代碼:
PingBackNotificatinProxy 繼承了XmlRpcClientProtocol這個類,與官方網站上面給出的例子不同,本應該是實現IXmlRpcProxy這個接口,仔細一看,原來XmlRpcClIEntProtocol已經實現了IXMLRpcProxy接口。這樣通過PingBackNotificatinProxy的Notify方法就可以發送請求了。
而作為服務器端,XML-RPC服務被包含在IIS環境裡面了,因此實現XML-RPC服務只要繼承XMLRpcService這個類就可以了。
XML-RPC服務器端部分代碼:
可以通過XMLRpcMethod這個屬性看出客戶端和服務器端的聯系,當客戶端發送Notify方法請求時,服務器端接收到後會調用pingBack方法進行處理。
參考資料:
XML-RPC協議, XML-RPC.Net 及其 FAQ