Elixir:
Travailler avec JSON
Comment faire :
Dans Elixir, vous pouvez utiliser la bibliothèque Jason
, un choix populaire pour l’analyse et la génération JSON. Tout d’abord, ajoutez Jason
aux dépendances de votre projet dans mix.exs
:
defp deps do
[
{:jason, "~> 1.3"}
]
end
Ensuite, exécutez mix deps.get
pour récupérer la dépendance.
Analyse de JSON :
Pour convertir une chaîne JSON en structures de données Elixir :
json_string = "{\"name\":\"John\", \"age\":30}"
{:ok, person} = Jason.decode(json_string)
IO.inspect(person)
# Sortie : %{"name" => "John", "age" => 30}
Génération de JSON :
Pour convertir une map Elixir en une chaîne JSON :
person_map = %{"name" => "Jane", "age" => 25}
{:ok, json_string} = Jason.encode(person_map)
IO.puts(json_string)
# Sortie : {"age":25,"name":"Jane"}
Travailler avec des Structs :
Pour coder une struct Elixir, vous devez implémenter le protocole Jason.Encoder
pour votre struct. Voici un exemple :
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)
# Sortie : {"age":28,"name":"Mike"}
Cette approche simple vous permettra de commencer à intégrer le traitement JSON dans vos applications Elixir, facilitant l’échange de données dans divers environnements de programmation.