nodeでRESTのおもちゃを検討中

ちょっと思い立って、遊び用のREST APIのおもちゃを作成中。

前回遊んでいた https://akibakokoubou.jp/2020/05/05/qnap-local-media-player/ はとりあえず不便がない程度には動いていて実用中。

手軽なフレームワークを探していて Ts.ED(tsed) https://tsed.io/ を見つけたのだが、あんまり情報がない。少し調べてみるとnest https://nestjs.com/ とよく似ているっぽい。

偶然見つけたこともあるし、遊び用だしマイナー好きな人なので Ts.ED で少しいじってみる。取り急ぎの部分は一晩で出来たし。

Aging Bookmark

https://github.com/mfukushim/aging-bookmark

ほとんど使わないブックマークを別のフォルダにまとめてしまうChrome拡張。

個人的にブックマークがあまりにまとまらなくなったので必要となって、作るならVue 2 と vuetify 2とTypeScriptの非同期記述の勉強用にと、ごそごそ夜中に作っていたもの。とりあえず Chromeウェブストアにも公開依頼中(認可されるかどうかは知らぬ)

https://chrome.google.com/webstore/detail/%E3%82%A8%E3%83%BC%E3%82%B8%E3%83%B3%E3%82%B0-%E3%83%96%E3%83%83%E3%82%AF%E3%83%9E%E3%83%BC%E3%82%AF/dephihopkgpedlhbklfgkphinmimgppm

IntelliJでのnodejs-expressのdockerリモートデバッグ設定

開発環境前提(セキュリティ関係はなし状態),サーバー側は docker-composeとnodemonで実行

サーバー側のdocker-compose.yml内の nodemon 行にinspect項を追加。port 9229を通す

app:
・・・
  ports:
    - "0.0.0.0:9000:9000"
    - "0.0.0.0:9229:9229"
  command: sh -c "・・・ nodemon --inspect=0.0.0.0:9229 ・・・"

ローカルのIntelliJ側は Run/Debug Configuration で Attach to Node.js/Chrome を選んでデバッグ実行

つながらないときは サーバー側に
Debugger listening on ws://0.0.0.0:9229/b4f8874b-e433-429c-8e61-1xxxxx などのログが出ているので websocket がつながるか別のツールで確認する(wscatなど)

Docker Toolbox for Windows は基本Cドライブ内しかディスク共有できない

今時 Docker Toolbox for Windows を使っているだとかいう突っ込みはなしで。。。

Docker Toolbox for Windowsではプロジェクトは Cドライブ(できればCドライブの文書フォルダ内) に置いたほうがよい。

いろいろ技術的な制約(VirtualBoxの共有設定とか)のため、 ディスク共有を別ドライブに置くことが難しい。出来ない訳ではない。実際にVirtualBoxレベルの設定をぐちゃぐちゃいじってDドライブとかに設定は出来た。ただ全然本道ではないところに時間を食うので避けたほうがよい。実際昔ごちゃごちゃやってそれが出来たというところまで覚えていた状態で、再び似た環境を作ることになって、またごちゃごちゃを思い返していらない時間を使った。。。

できれば
Macを使う→Unix系なのでシェル差異やファイルシステム差異などを気にしなくてよい→自分は宗教上Macは避けている。
Docker for Windowsを使う→Hyper-Vベースなのでうまくいくのかも?→何でも屋をやっていると VirtualBox,VMwareなどをもろもろ使うのでHyper-Vが入れられない。
Linuxを使う→どうしてもOffice系ドキュメントを欲しがるお客がいる&デスクトップ系の小賢いツールを使いたいときがある。

WindowsのCドライブは肥大して訳がわからなくなるので極力別ドライブに入れたい(アプリや文書データ等)という管理をしていると表題の問題に当たっちゃう訳で。。。

Windowsをそろそろ離れたいというところもあるのだけどなぁ(私的利用では中古ノートをChromeBook化したもので困らなかったところはある)

ASP.NET : TextBoxは複数行指定すると長さ指定は無効になる

おそらくその手の専門の人には当たり前なんでしょうが、そゆのも含めて水増しする方針で。

ASP.NETのフォームaspxについて

<asp:TextBox ID="textbox" runat="server" Text="" TextMode="MultiLine" ></asp:TextBox>
複数行テキストボックスでOK
<asp:TextBox ID="textbox" runat="server" Text=""  MaxLength="128" ></asp:TextBox>
128文字までしか入らない1行テキストボックスでOK
<asp:TextBox ID="textbox" runat="server" Text="" TextMode="MultiLine" MaxLength="128" ></asp:TextBox>
128文字しか入らない複数行テキストボックスにはならない。ただの複数行ボックスになるだけ。

この場合にはJavaScriptやASPでバリデーションのコードを作るのが常套手段だそうで。

検索したソースのサイトのリンクとかどういう扱いにするのがいいのかな。まぁそういうのも含めて追々考えよう。