PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 25 → WM - Como Ler um Json externo utilizando Deserialize
WM - Como Ler um Json externo utilizando Deserialize
Iniciado por Reimann Rossini CAIO, 08,jun. 2016 16:14 - 2 respuestas
Miembro registrado
1 mensaje
Publicado el 08,junio 2016 - 16:14
Agradeço ao Adriano e Vilani pela ajuda.

Exemplo Json utilizado (teste.json).

{
"Versao": 20,
"Endereco": "http://seu_servidor/teste.json",
"Postagens": [
{
"Titulo": "Teste Json",
"Texto": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"Imagem": "Banner1.png"
}, {
"Titulo": "Json 2, o Retorno!",
"Texto": "Windev Mobile 20",
"Imagem": "Banner2.png"
}
]
}


Antes de consumir o serviço, é necessário criar a estrutura do Json no Windev.

Dados is structure

Titulo is string
Texto is string
Imagem is string

END

EstruturaDados is structure

Versao is int
Endereco is string
Postagens is array of Dados

END


Com a estrutura pronta é só ler o Json (nesse caso via HttpRequest) e utilizar a função Deserialize. (http://help.windev.com/en-US/…)

ResCode is Buffer

ResStart is boolean = HTTPRequest("http://seu_servidor/teste.json")
IF ResStart = True THEN
ResCode = HTTPGetResult()

END

Teste is EstruturaDados

Deserialize(Teste, ResCode, psdJSON)

Info(Teste.Versao)

FOR EACH Postagem OF Teste.Postagens

TableAdd(Table1, Postagem.Titulo + TAB + Postagem.Texto)

END
Miembro registrado
3.661 mensajes
Popularité : +175 (223 votes)
Publicado el 08,junio 2016 - 16:20
:thank you:

--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/
Miembro registrado
213 mensajes
Popularité : +25 (25 votes)
Publicado el 07,diciembre 2016 - 18:46