ブックマーク / medium.com/@agatan (1)

  • Go で構造の一部が動的に変わる JSON を扱いたい – Naomichi Agata – Medium

    json.RawMessage を使うと,一部のフィールドを見てから payload の型を決定することができます 問題WebSocket でやりとりするサーバを書いていて,一つのコネクション上でいくつかの種類のコマンドを JSON として受け付けるような仕組みが欲しくなりました. { "action": "increment", "payload": { "value": 3 } }と { "action": "greet", "payload": { "name": "World" "language": "English" } }のように, action フィールドに応じて payload の構造が変わるという構成です. golang でふつうに JSON を受け取って構造体にマップする際には,下のようにします. type Message struct { Action string

    nishitki
    nishitki 2024/03/22
  • 1