鈍足ランナーのIT日記

走るのが好きな5流のITエンジニアのブログ。

趣味の範囲は広いけど、どれも中途半端なクソブロガー楽しめるWebアプリを作ってあっと言わせたい。サーバーサイドPerl(Mojolicious)、クライアントサイドVue.js。Arduinoにも触手を伸ばす予定。

ArduinoでHTTPアクセス

エコシステムを利用しない手はない、というわけで ArduinoイーサーネットシールドというハードからMojolicious(HTTPサーバー)に対して HTTPアクセスするわけなのですが、ライブラリが提供されています。

下記ライブラリでいいのかな。Mojoliciousからの返却値をJSONとかに してしまうとパースが大変そうな感じ? 単純にボディの値で0-100の数字で返してやったほうがいいのかな。

でもって、Mojoliciousのサーバ側の実装(降水確率を返す) これならLiteAppでも書けるのですが・・・慣れの問題でAppです。

package Hoge::Web::Example;
use Mojo::Base 'Mojolicious::Controller';

# This action will render a template
sub welcome {
  my $self = shift;
  
  $self->stash(rain => int(rand(100)));
  $self->render();
}

1;

welcome.html.ep

<%= rain %>

ホントは、ちゃんと降水確率をWebAPIと連携して取得しなくてはいけませんが、 申請中なのでランダムです!

とりあえず、さくらVPSにデプロイ完了。Webアプリの準備はできた。