Ir para o conteúdo

Tópico em Wikilivros:Plantão de dúvidas/Flow

Acessando resultados da API em JSON vs XML

4
Guiwp (discussãocontribuições)

Não sei onde fazer essa pergunta, mas aqui parece melhor do que em Wikilivros:Diálogos comunitários.

Enquanto testava a API do software MediaWiki, percebi algumas coisas...

Você sabe porque decidiram duplicar o campo id quando o resultado vem em JSON? Por que resolveram deixar a propriedade query mesmo quando não há nenhum outro dado que conflite com nome pages?

Veja:

Com a redundância desnecessária

var resultado =
{
    "query": {
        "pages": {
            "id": {
                "pageid": "id",
                "ns": "namespace",
                "title": "title"
            }
        }
    }
}

Para acessar desse jeito, tenho que digitar: resultado.query.pages[id].title.

Sem essa redundância

Por que não fizeram como abaixo quando o resultado só tem informações de páginas?

var resultado =
[
    {
        "pageid": "id",
        "ns": "namespace",
        "title": "title"
    },
    {
        "pageid": "id",
        "ns": "namespace",
        "title": "title"
    }
]

Para acessar: resultado[índice].title.

Em XML

Em XML não tem nada disso, veja:

<?xml version="1.0"?>
<api>
  <query>
    <pages>
      <page pageid="id" ns="namespace" title="title" />
    </pages>
  </query>
</api>
He7d3r (discussãocontribuições)

Provavelmente só conseguirá detalhes sobre o que motivou esse design específico se perguntar diretamente na lista wikitech ou no canal do IRC.

Esta mensagem foi publicada por He7d3r, mas assinada como Helder.wiki.