Elixir:
Làm việc với JSON
Cách làm:
Để xử lý JSON trong Elixir, chúng ta sử dụng các thư viện như Jason
hoặc Poison
. Dưới đây là một hướng dẫn nhanh với Jason
:
# Thêm Jason vào mix.exs của bạn như một sự phụ thuộc
{:jason, "~> 1.3"}
# trong một file .ex, để mã hóa Elixir sang JSON
json_string = Jason.encode!(%{foo: "bar"})
# Bây giờ giải mã JSON sang Elixir
elixir_map = Jason.decode!(json_string)
Kết quả:
json_string #=> "{\"foo\":\"bar\"}"
elixir_map #=> %{"foo" => "bar"}
Mã hóa với opts
cho việc in đẹp:
Jason.encode!(%{foo: "bar"}, pretty: true)
Kết quả:
{
"foo": "bar"
}
Thâm nhập
JSON được đề xuất bởi Douglas Crockford vào đầu những năm 2000. Nó nhanh chóng được chấp nhận do sự đơn giản so với XML.
Có sự thay thế? Chắc chắn - XML, YAML, hoặc Protocol Buffers, tuy nhiên JSON vẫn thống trị do sự đơn giản và hỗ trợ bản địa bởi JavaScript.
Bên dưới lớp vỏ, các thư viện JSON chuyển đổi giữa các kiểu dữ liệu Elixir sang chuỗi JSON và ngược lại. Khớp mẫu và thư viện tiêu chuẩn mạnh mẽ của Elixir làm cho quá trình mã hóa và giải mã trở nên trôi chảy.
Xem thêm
- GitHub của Jason: https://github.com/michalmuskala/jason
- GitHub của Poison: https://github.com/devinus/poison
- Bài học về JSON tại Elixir School: https://elixirschool.com/en/lessons/specifics/jason/