Elixir:
Arbeta med JSON
Hur man gör:
I Elixir kan du använda biblioteket Jason
, ett populärt val för JSON-tolkning och generering. Lägg först till Jason
i ditt projekts beroenden i mix.exs
:
defp deps do
[
{:jason, "~> 1.3"}
]
end
Kör sedan mix deps.get
för att hämta beroendet.
Tolka JSON:
För att konvertera en JSON-sträng till Elixir datastrukturer:
json_string = "{\"name\":\"John\", \"age\":30}"
{:ok, person} = Jason.decode(json_string)
IO.inspect(person)
# Utdata: %{"name" => "John", "age" => 30}
Generera JSON:
För att konvertera en Elixir-map till en JSON-sträng:
person_map = %{"name" => "Jane", "age" => 25}
{:ok, json_string} = Jason.encode(person_map)
IO.puts(json_string)
# Utdata: {"age":25,"name":"Jane"}
Arbeta med Strukturer:
För att koda en Elixir-struktur måste du implementera protokollet Jason.Encoder
för din struktur. Här är ett exempel:
defmodule Person do
@derive {Jason.Encoder, only: [:name, :age]}
defstruct name: nil, age: nil
end
person_struct = %Person{name: "Mike", age: 28}
{:ok, json_string} = Jason.encode(person_struct)
IO.puts(json_string)
# Utdata: {"age":28,"name":"Mike"}
Denna enkla metod kommer att hjälpa dig att komma igång med att integrera JSON-behandling i dina Elixir-applikationer, vilket underlättar datadelning i olika programmeringsmiljöer.