Ruby:
Praca z YAML
Jak to zrobić:
Ruby posiada wbudowaną bibliotekę o nazwie Psych do parsowania i emitowania YAML. Aby jej użyć, najpierw musisz zażądać standardowej biblioteki YAML. Oto podstawowy przykład, który pozwoli Ci zacząć:
require 'yaml'
# Hash do serializacji
person = { name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"] }
# Konwersja hasha na YAML
yaml_data = person.to_yaml
puts yaml_data
Przykładowe Wyjście:
---
:name: John Doe
:age: 30
:skills:
- Ruby
- JavaScript
Aby wczytać dane YAML z powrotem do obiektu Ruby:
loaded_person = YAML.load(yaml_data)
puts loaded_person
Przykładowe Wyjście:
{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}
Używanie Bibliotek Stron Trzecich:
Chociaż standardowa biblioteka wystarcza do podstawowych zadań, dla bardziej skomplikowanych potrzeb możesz zainteresować się gemami stron trzecich, takimi jak ‘safe_yaml’. Aby użyć takich bibliotek, musisz najpierw zainstalować gema:
gem install safe_yaml
Następnie, możesz go używać do bezpiecznego wczytywania danych YAML, minimalizując ryzyka, takie jak instancjonowanie obiektów z kontrolowanych przez użytkownika źródeł:
require 'safe_yaml'
safe_loaded_person = SafeYAML.load(yaml_data)
puts safe_loaded_person
Przykładowe Wyjście:
{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}
To podejście zwiększa bezpieczeństwo obsługi YAML, czyniąc je dobrą opcją dla aplikacji wczytujących YAML z niezaufanych źródeł.