Páginas

quinta-feira, 26 de maio de 2016

Como validar o JSON na linha de comando no Linux

Tendo em conta a sua simplicidade sintática e flexibilidade, JSON (JavaScript Object Notation) tornou-se praticamente o de facto troca formato de dados padrão usado em muitas aplicações web. Como JSON torna-se amplamente utilizado para representar dados estruturados com um alto grau de flexibilidadesurge a necessidade de ser capaz de “validarRepresentações de JSON.
Assim, surgiu uma coisa chamada Esquema JSON (Atualmente o IETF projecto v4), que
especifica a estrutura de dados JSON em um formato declarativomuito como um banco de dados esquema define a estrutura lógica e a relação de registros de banco de dadosPróprio esquema JSON escrita em JSONEsquema JSON pode ser bastante útil não apenas para gerar corretamente formatados dados JSONMas também para verificar a exactidão da estrutura e do formato de dados JSON.
Este tutorial vai cobrir dois aspectos de validação JSON em relação ao esquema JSON.
Primeiro, É possível validar dados JSON contra um esquema JSON, ou seja, verificar se os dados JSON fornecidos estão em conformidade com a especificação de esquema JSONO outro aspecto da validação é validação de esquemaOnde você Verifique se o esquema JSON em si é bem formado por esquema de JSON rascunho da Internet. Em ambos os casos, Vou mostrar como realizar a validação necessária na linha de comando no Linux.

Validar dados JSON contra um esquema de JSON na linha de comando

Existem muitas bibliotecas de código-fonte aberto e independente de ferramentas que podem validar dados JSONUma delas é a biblioteca python JSON-Spec, que vem com uma ferramenta de linha de comando chamada json.
Para instalar o JSON-Spec em Linux, primeiro instalar o pip, e, em seguida, instalá-lo como segue.
instalar o sudo pip json-especificação
Em seguida, você pode validar dados JSON contra um esquema JSON na forma de:
JSON validar –esquema-file=schema.json –documento-file=data.json
JSON validar –esquema-file=schema.json
JSON validar –esquema-file=schema.json –documento-json ='{“Foo”: [“bar”, “Baz”]}’
Vamos usar os seguintes dados de exemplo JSON e esquema JSONe ver como os dados JSON podem ser validados contra o esquema JSON.
Data.JSON:
{
    "ID" : 1,
    "nome": "Dan Nanni",
    "idade": 25,
    "habilidades": ["shell script", "Centro de dados"]
}
Schema.JSON:
{
    "título": "Empregado",
    "Descrição": "Descrição de empregado",
    "tipo": "objeto",
    "Propriedades": {
        "ID": {
            "Descrição": "O identificador exclusivo de um empregado",
            "tipo": "número inteiro"
        },
        "nome": {
            "Descrição": "Nome do funcionário",
            "tipo": "seqüência de caracteres"
        },
        "idade": {
            "tipo": "número",
            "mínimo": 0,
            "exclusiveMinimum": true
        },
        "habilidades": {
            "tipo": "matriz",
            "itens": {
                "tipo": "seqüência de caracteres"
            },
            "minItems": 1,
            "uniqueItems": true
        }
    },
    "Necessário": ["ID", "nome", "idade"]
}
Dadas as amostras acimavalidar a test.json contra test.schema como segue.
JSON validar –esquema-file=test.schema –documento-file=test.json
Se os dados do JSON está de acordo com o esquemao comando não produzirá nada. Se não, o comando irá disparar uma exceção:
Exceção: documento não valida com esquema.

  #/
    - razão pela qual Propriedade Missing

Validar um esquema JSON na linha de comando

Outro aspecto da validação de JSON é verificar se tem ou não o próprio esquema JSON sintaxe válidaPara a validação de esquemauma ferramenta de Java chamada JSON-esquema-validação vem a calhar. Esta ferramenta suporta a validação de sintaxe para o mais recente JSON esquema projecto v4Pode funcionar independente da linha de comandoou pode ser integrado em Maven processo de compilação como um plugin.
Para executá-lo na linha de comandoVocê pode baixar sua versão totalmente executável do frasco de Bintray. Certifique-se de baixar o json-esquema-validação-X.X.X-lib.jarque tem todas as dependências incorporadas.
Assim que você baixá-lo, verificar a validade de um esquema JSON na linha de comando como segue.
Java-jar json-esquema-validação-2.2.6-lib.jar –sintaxe schema.json
--- BEGIN /home/dan/schema.json---
validação: SUCESSO
--- /Home/dan/schema.json--final-

Nenhum comentário:

Postar um comentário