Pocket

先日、htpasswd-managerを公開しました。CSVファイルにユーザー名やパスワードを書いておき、.htpasswd や .htgroup に変換するツールです。

当初、ユーザー名やパスワードをJSONファイルに書いていました。標準のJSON.parse()ですみますし、複数の所属グループを配列で書けるので。

ほぼ完成というときになって、JSONファイルでいいのか、CSVファイルにしたほうがいいのか、悩みはじめました。

運用担当者のPCにエクセルはあるけど、テキストエディターはメモ帳しかないかもれないと思い、CSVファイルにしました。複数の所属グループは、セル内のカンマ区切りにしました。

npm の csv-parse パッケージを使いました。

末尾に’r’ がつく、csv-parser は同じ目的ですが、別の開発者のパッケージです。

csv-parse

2次元配列を返す

実行結果

先頭行をキー名にして、オブジェクト配列を返す

実行結果

オプション relax_column_count

CSVファイルの各行の列数が揃っていないと、エラーが発生します。

実行結果

エラーにしたくない場合は、オプションで relax_column_count:trueを指定します。

実行結果