JSON, YAML, XML
Recentemente, me mudei para Moscou, para um apartamento sem mesa.
Foi uma circunstância incômoda que agravou uma situação difícil: também não havia lugar para dormir. Em geral, liguei para a IKEA e pedi para trazer os dois.
Alguns dias depois, a mobília foi entregue. Desembrulhei a primeira caixa, um manual caiu e perdi as mãos: deve ter cinquenta idiomas diferentes, todos em letras pequenas, como um livro de feitiços de Harry Potter. Mas quando olhei mais de perto, vi que havia apenas desenhos nele, a saber: dois caras engraçados estavam mostrando como lidar com os detalhes, como girá-los, montá-los e assim por diante. Ufa, felicidade! Pensei em JSON e XML. Muito bem, a IKEA usou uma linguagem universal de sinais e imagens, compreensível para todas as pessoas do mundo.
Se eu escrever algum código em JAVA e me ocorrer trocar esse código por outro aplicativo escrito em Python, então, provavelmente, nada funcionará. É como entregar aos japoneses as instruções para a montagem de uma escrivaninha em mongol. Para este ponto de comunicação, preciso encontrar uma linguagem comum ou linguagem de serialização de dados , belezas como JSON ou XML, por exemplo.
XML (Extensible Markup Language) é usado principalmente em sites e tenta ser legível por humanos. Eu disse “tentando” porque ele faz bem, mas não muito bem. Seu nome inclui o conceito de marcação , pois no código inclui detalhes adicionais como formatação de texto, fonte, cor e tamanho.
JSON (JavaScriptObject Notation). , JavaScript. , APIs. APIs, XML, . .
XML YAML, (markup) . -, Python Perl. Ansible. Ansible . Yansible. - .
JSON
? , , . , , , .
, , . , display version CE, NE :
, , . , SSH Python display version display ip int brief, JSON , , XML YAML, , -, , , -, , . , , Python- . - , . ( ) JSON.
, :
, :
?
: ..
?
: -
! “” (key), - “” (value). (colon).
?
: 105
?
:
?
: 27 2007
. , . , - . key value, key value . :
“height”: “105m”
.
JSON : objects arrays.
:
{“height”: “105m”, “color”: “red”}
:
key:value . , .
{} curly braces
Key value : a colon
key:value , a comma ( !)
, () double quotes
:
(object)
{
“height” : “105m”,
“color” : “red”
}
:
, .
Ansible. CloudEngine6800 playbook display int GE1/0/1:
-vvv, . JSON:
ansible-playbook -vvv display_int_1.yml
, - :
? :
, :
key value? :
!
, value , , value , , . Null - . .
(square brackets):
arrays.
Array , value.
, playbook, display version:
, , :
, , - commands.
Array JSON, (string), "Huawei Versatile Routing Platform Software", , , (null) array.
, . { }curly braces - JSON object. , Python - dictionary:
- array. [ ] square brackets. list:
array object - , . .
:
Postman , . Visual Studio Code:
, { curly braces key: value. Key !
, . , value - JSON :
, … , loopback 4 loopback 5, . GigabitEthernet1:
loopback 2 loopback 3. 5 . , :
, loopback 5 , . array , :
key:value, . , :
Visual Studio code , .
...
Voila! :
key:value. : items + array, - kind + collections#interface
, - pretty JSON. : , , .
JSON . , Python , :
ENCOR 350-401 , JSON output, .
Python pretty JSON, pretty print (pprint):
, , JSON:
Ansible CloudEngine Huawei, : " - Windows Ansible. !” "- Ansible CloudEngine "