AWSのIAMユーザーごとに権限を設定する場合、最初から用意されているポリシーだけでは十分な制限がかけられません。例えば特定のバケット以外は触らせたくないと言った場合ですね。こういう細かい制御がしたくなったらJSONで定義することになります。
今回はIAM作成時によく利用するJSONのサンプルをメモします。しばらく設定しない期間が続くとよく忘れるので自分用ですw
続きを読む
AWSのIAMユーザーごとに権限を設定する場合、最初から用意されているポリシーだけでは十分な制限がかけられません。例えば特定のバケット以外は触らせたくないと言った場合ですね。こういう細かい制御がしたくなったらJSONで定義することになります。
今回はIAM作成時によく利用するJSONのサンプルをメモします。しばらく設定しない期間が続くとよく忘れるので自分用ですw
続きを読む
設定情報やちょっとしたデータの管理にレンダラープロセスの場合はWebStorageやIndexedDBが利用できますが、メインプロセスでは自力でファイルに保存する処理が必要でちょっと面倒。そんな時に利用するのがelectron-storeです。手軽にデータの永続化ができます。
今回はこのelectron-storeを利用しウィンドウの位置とサイズを記録、次回起動する際に復元するサンプルを作成します。
続きを読む
小ネタです。
csv-writerモジュールを使うとJSON的なデータをCSV形式でかんたんに保存することができます。
// CSVにしたいデータ(オブジェクト)
const data = [
{id:1, title:"吾輩は猫である", view:123},
{id:2, title:"坊っちゃん", view:456},
{id:3, title:"こころ", view:789}
];
// 準備
const createCsvWriter = require('csv-writer').createObjectCsvWriter;
const csvWriter = createCsvWriter({
path: '/var/tmp/data.csv', // 保存する先のパス(すでにファイルがある場合は上書き保存)
header: ['id', 'title', 'view'] // 出力する項目(ここにない項目はスキップされる)
});
// 書き込み
csvWriter.writeRecords(data)
.then(() => {
console.log('done');
});
次のようなファイルが生成されます。
$ cat /var/tmp/data.csv
1,吾輩は猫である,123
2,坊っちゃん,456
3,こころ,789
小ネタです。
結論から言うと、JSON.stringify()
の第2引数にnull、第3引数に数値を指定することで人間がパッと見て分かるよう整形した文字列が返されます。
const data = [
{
"season": "202004",
"title": "乙女ゲームの破滅フラグしかない悪役令嬢に転生してしまった…",
"company": "SILVER LINK."
},
]
// 機械に優しい
const str1 = JSON.stringify(data);
console.log(str1)
// 人間に優しい
const str2 = JSON.stringify(data, null, 2);
console.log(str2)