webSendCom
2015年1月18日 - 未分類
sendcomは、パソコンとアイティプランターをつないでいる重要なアプリです。itpManager2でも、sendcomを通じて通信をしています。アイティプランツがつながったIntel edisonにsendcomをインストールすれば、ブラウザでsendcomを利用できます。これで、少し面倒ですが、アイティプランターの全機能が利用できます。
サーバー側のNode.jsで、request objectから、コマンドと引数をひきだすのに苦労しました。結局、urlから切り出しました。
もっと簡単な方法があれば、ぜひ、教えて下さい。
var tmp00 = req.url.split('?'); var tmp01 = tmp00[1].split('&'); var tmp02 = tmp01[0].split('='); var tmp03 = tmp01[1].split('='); var com = tmp02[1]; // command var tmp04 = tmp03[1].replace(/\+/g,' '); var args=tmp04.split(" "); // arguments
もう1つ、苦労した点は、jQueryのオブジェクトからテキストを引出すところです。JavaScriptのオブジェクトと混在しているので、気が付きませんでした。.text()で取得するんですね。分かれば簡単でした。分かるまでが大変でした。
var result = response.text();
URLから情報を取得している関係で、%とか、’,’とかの特殊文字が、%25とかに変わっていまいます。エンコードされているのですね。デコードの方法は、どうすればいいのでしょうか?
意外と簡単でした。
args=decodeURIComponent(args);
で、もどりました。ちなみに、 args=decodeURI(args);ではエラーです。何が違うのでしょうかね?