.NET Micro FrameworkでRESTサービスの構築をサポート実現を目指す、netduinoのプロジェクトmfRFCに関する記事。
Sinatraのような感じでルーティングの設定をして、URIに対応したメソッドを追加する。
以下のコードのようにルーティング設定をして、HTTPサーバーを初期化する。
(コードはCodePlexのmfRCFのサイトより引用)
public static void Main()
{
//initialize network (out-of-the-rcf-box)
mfNetworkInitialization.InitializeNetworkInfrastructure();
//register specified rcf-commands
mfRcf.Instance.Commands.Add(new RssGetCommand("/rss"));
mfRcf.Instance.Commands.Add(new StateGetCommand("/state"));
mfRcf.Instance.Commands.Add(new DateGetCommand("/date"));
mfRcf.Instance.Commands.Add(new DatePostCommand("/date"));
mfRcf.Instance.Commands.Add(new OnboardLedGetCommand("/led"));
//initialize & start rcf
var rcfPlattformProvider = new mfRcfPlattformProvider();
mfRcf.Instance.PlattformProvider = rcfPlattformProvider;
mfRcf.Instance.Start();
}
また、RESTでデータをやりとりする為に、非常にコンパクトなMF向けのXMLシリアライザーであるmfXmlSerializerというプロジェクトも立ち上がっています。
こうしたコンパクトなREST FrameworkはArduinoでも見られるし、なんかよくわからない「それRS-232C用のプロトコル?」みたいなオレオレ国家標準家電プロトコルみたいなのは、全く時代錯誤で将来性も低く建設的でないので、組み込みでもRESTベースのプロトコルになることを節に願うばかり。Internet of ThingsといったときのInternetはIPじゃなくて、HTTPなんだよってコトを日本のデバイス開発と政策決定者達は理解した方がいいんじゃないかしら。
コメント