2023-06

Go

[Go] Go で SSR をする

GoでWebサービスを作る時は、バックエンドだけをGoで書いてフロントは別のFWで用意するケースが多いと思うが、Goで直接HTMLを返したいような用途もあるかもしれない。自分は特定のページだけOGPに対応させたかったので、Goで直接動的に生...
Go

[Go] chiで静的ファイルを配信したい時

goで作ったhttpサーバーは、標準ライブラリだけで静的ファイルを配信することもできる。以下は ./static 以下にあるファイルを配信するサンプル。package main import ( "net/http" ) fun...
Go

[Go] テキストを埋め込んだ画像ファイルを生成するライブラリを作った

質問箱的なサービスを作るために、任意のテキストが埋め込まれた画像をOGP用に動的に生成したかったので、自分で作った。こういうコードで日本語を扱うのには一工夫必要らしくいろいろ情報が出てきたが、結局のところ、日本語に対応したフォントを使うだけ...
Go

[Go] [GORM] 構造体にタグを複数指定したい時

自分は Go の ORM として主に GORM を使っているが、このように構造体にタグをつけている。この例は自分が GitHub で公開しているコードから持ってきたものでわかりづらいが、内容は無視して見て欲しい。type Response ...
Webサービス

psが使えない環境でプロセスIDを取得する

Dockerコンテナ上で動作している Webアプリケーションで、プロセスが kill されたときの挙動を調べたかった。が、kill コマンドはあるのだが、ps コマンドが無いので、プロセスIDを取得することができなかった。ps を入れても良...
Go

[Go] アクセストークンやセッションIDの生成の悪い例

過去に作ったプログラムで、あまり良くない乱数の実装をしていることがわかったので、メモしておく。今回気づいたのは、過去に作った、ひたすらランダムな質問に回答していくようなWebサービスである。質問を発行した時に同時にトークンとなるランダムな文...
商品レビュー

「popIn Aladdin 2 Plus」+「Aladdin Connector」を使ってみて

※この記事は、FANBOXに投稿していたものを書き直したものです。買って1週間後と、1ヶ月後に2回記事を投稿したのですが、それからまたしばらく経ち感想が変わってきたので、2つの記事をまとめつつ、新しい情報も加えて、再度書き直すことにしました...
bash

.bash_profile と .bashrc の読み込みルール

仕事で新しいMacを導入した。デフォルトはzshになっているけど、自分は普段bashを使っているので、bashに変更した。そして、いつも使っている.bashrcを持ってきてホームディレクトリに置いたのだが、プロンプトが切り替わってくれない。...
Webサービス

Webサービスによるリダイレクトのステータスコードは何を使えば良いか

アクセスしてきたユーザーを別のページに飛ばすリダイレクト処理をするためのステータスコードは301と302の2種類がある。指定のURLに飛ばすという基本的な機能自体は同じだが、301は永続的な移動(サイトの移転など)を表し、302は一時的な移...
ebiten

[ebiten] pngファイルが読み込めない

最近、ebitenを触り始めたので、気づいたことを共有していきたい。ネット上にあったサンプルコードを参考に、まずは適当に画像ファイルを表示しようとしたのが以下のコード。main.gopackage mainimport ( "bytes" ...