Go言語

Goの構造体内のinterface{}型のフィールドにはどうアクセスすればいいのか?

SQLファイルから型安全なコードを自動してくれるsqlcというライブラリを使用してアプリ開発を行っているのですが、sqlcで以下のようなsqlよりgenerateを実行すると -- name: GetUsers :many SELECT id, case when name = "foo" then true when name = "bar" …

自作ソシャゲ用CLIツールにWebサーバ機能を追加し誰でもデータを閲覧しやすくしました

以前の記事でCLIツールを作成した記事を書きました。 litencatt.hatenablog.com 早いものであれから133日経過しています。その間、4/1は横浜スタジアムに行っていたりなどもしていました。 その間も引き続き自分のペースでゲームを続けていますが、ただ続け…

ginでWebアプリのログイン処理を実装してセッションについて学ぶ

この記事の対象者 Go言語で書かれたWebアプリケーションフレームワークであるginでCookieを使用した基礎的なセッション管理の実装について知りたい方向け github.com この記事内で紹介している実装の全体が見たい方はこちら github.com セッションとは Rails…

1000日間遊んでいるソシャゲ用CLIツールを開発した話

この記事は「GMOペパボエンジニア Advent Calendar 2022」の11日目の記事です。 今回はタイトルにある通り、現在も絶賛プレイ中のソシャゲのCLI開発からリリースに至る過程などについてお話します! adventar.org UNI’S ON AIR(ユニエア)について 今回の記事…

非推奨なJSONの配列型をUnmarshalする

Unmarshalシリーズ3回目?となりましたが今回非推奨なJSONの配列型のUnmarshal方法を扱います。 通常JSONの配列は以下に示すような書き方が一般的ですが、 { "list": { "listItem": [ { "foo": "1", "bar": "2", "buz": "3" }, { "foo": "4", "bar": "5", "bu…

reflectionを使用した構造体データと独自フォーマット文字列の相互変換

TL;DR 今回の記事内に出てくるコードの全体は以下レポジトリにあります https://github.com/litencatt/playground-go/blob/main/convert-struct/main.go 出力結果 $ go run main.go === Struct to String Lines === Input: {Param1:Val1 Param2:[Val2 Val3]}…

一部可変的な構造体の要素を含むJSONをUnmarshalして可変部の値を取り出す

背景 以下に示すような一部データ構造が可変的な要素を含むJSONをUnmarshalしてかつその要素の値を取り出したい 前提として可変部のタイプはJSONに含まれるある値(ここではkeyとする)で判定可能とする 今回"variable"の要素が[]stringまたは[]structの場合を…