はじめに

Facebook の仮想通貨(暗号通貨, 暗号資産)である Libra を、Node.js 環境で触ることのできるクライアント libra-core の使い方をまとめた。

インストール方法は Mac に Facebook の仮想通貨 Libra の Node.js クライアント libra-core をインストールする を参照。

TL;DR

  • libra-core v1.0.5 を色々と試した
  • 送金に関する Issue/PR #33 があるので注意
  • バージョンアップで大きく変わるかもしれないので、この記事は参考程度にとどめておいた方が良いと思う
続きを読む

はじめに

Facebook の仮想通貨(暗号通貨, 暗号資産)である Libra を、Node.js 環境で触ることのできるクライアント libra-core を Mac(MacBookPro) にインストールする方法をまとめた。

続編: Facebook の仮想通貨 Libra の Node.js クライアント libra-core(v1.0.5) 調査メモ

TL;DR

  • Node.js のバージョンは v12 以上が必要
  • grpc インストール未なら、homebrew で grpc をインストール
  • npm install libra-core でインストール完了

目的・やったこと

FaceBook の仮想通貨(暗号通貨, 暗号資産)である Libra を、Node.js 環境で触ることのできるクライアント libra-core を Mac(MacBookPro) にインストールする方法をまとめた。

libra-core を Mac(MacBookPro) にインストールしようとして、つまずいたりしたので手順をメモしておく。

続きを読む

はじめに

ディレクトリ(プロジェクト)ごとに Node.js のバージョンを変更したかったので、管理ツールを調べた。

TL;DR

  • nodenv を使えば、ディレクトリごとに Node.js のバージョンを管理できる
  • nodenv install <version> で Node.js の指定バージョンをインストール
  • nodenv local <version> でそのディレクトリで使う Node.js のバージョンを固定

目的・やったこと

ディレクトリ(プロジェクト)ごとに Node.js のバージョンを変更したかったので、管理ツールを調べた。

続きを読む

はじめに

JavaScript で setTimeout, setInterval, addEventListener のコールバック関数に引数を渡す方法をまとめた。

TL;DR

  • setTimeout, setInterval には bind(<this>, <args>)
    • コールバック関数内では、関数定義の仮引数でアクセス
  • addEventListener には第二引数を Object 型で渡す
    • コールバック関数内では this.args で引数にアクセス

目的・やったこと

setTimeout, setInterval, addEventListener のコールバック関数に引数を渡したかったので調べてまとめた。

続きを読む

はじめに

Node.js で BTC の単位変換(1 BTC = 100,000,000 Satoshi)を正確に行う方法を調べた。

TL;DR

  • Node.js で BTC の単位変換をするには satoshi-bitcoin パッケージを使う
  • toSatochi で BTC → satoshi
  • toBitcoin で BTC ← satoshi

目的・やったこと

通常、整数型と浮動小数点数との変換には、丸め誤差による影響が出てくる。BTC の単位変換を行う際に、正確に変換する方法を調べた。

続きを読む

はじめに

Python boto3 で AWS S3 を操作する では、ローカルに保存されているファイルや画像をアップロードする方法などを調べた。

また、Python requests で画像をダウンロードして保存する方法 では、requests を使って、画像をダウンロードする方法を調べた。

今回は requests でダウンロードした画像を、ローカルに保存することなく 直接 S3 にアップロードする方法をまとめた。

TL;DR

  • res = requests.get(image_url, stream=True) でダウンロード
  • bucket.upload_fileobj(res.raw, "key/of/file") でアップロード
  • 必要に応じて ExtraArgs={"ContentType": res.headers["Content-Type"]} を付与

目的・やったこと

requests でダウンロードした画像を、ローカルに保存することなく 直接 S3 にアップロードする方法を調べた。

続きを読む

Python boto3 で AWS S3 を操作する



カテゴリー Programming

はじめに

Python boto3 を使って、AWS S3 にファイルのアップロードや削除方法を調べた。

TL;DR

  • アップロードは boto3.resource("s3").Bucket("your-bucket").upload_file
    • 公開状態にしたい場合は、Bucket そのもののブロックパブリックアクセスをオフにして、ExtraArgs={"ACL": "public-read"} を付ける
    • 画像をブラウザで開きたい場合は、ExtraArgs={"ContentType": "image/jpeg"} などを付ける
  • 削除は boto3.resource("s3").Bucket("your-bucket").delete_objects

目的・やったこと

Python boto3 を使って、AWS S3 にファイルのアップロードや削除方法を調べた。

続きを読む

はじめに

Rails で既存の DB を利用するアプリケーションの作り方を調べた。注意点としては、Rails からは DB の更新は行わず、読み込みのみ(Read Only)という構成である。

※最終的にはアクセスログなどのテーブルを更新することになると思うが、「アプリケーション本体の機能としては DB の更新はなし」(別のプログラムで DB が作られる)というイメージ。

TL;DR

  • DB 参照だけなら config/database.ymlapp/models/your_model.rb だけ作れば良い
  • db/schema.rbdb/migrate/xxxx.rb は不要
    • db/schema.rb あると、DB の構成確認できて便利かもね

目的・やったこと

冒頭に述べた通り、別プログラムで DB が作られているような構成で、ユーザー表示部分のみを Rails で提供したい場合の使い方を調べた。

続きを読む

Git で#から始まるコミットメッセージを登録



カテゴリー Programming
タグ
Git Programming

はじめに

GitHub で Issue と紐付けるため、# から始まるコミットメッセージにしようとしたらコメント扱いされてハマったので対処方法を残しておく。

TL;DR

  • 1行メッセージなら git commit -m "#x hogehoge" で OK
  • 複数行メッセージなら git commit --cleanup=whitespace で OK
    • 余計な内容がコミットメッセージに残らないように注意

目的・やったこと

Git のコミットで # をコメント扱いされない方法を調べた。

続きを読む

r17n


Softwear Engineer


Fukuoka