Page 1 of 1
Archivo JSON
Posted:
Tue Aug 23, 2016 11:27 am
by TOTOVIOTTI
Hola amigos,
me envían un archivo JSON a una dirección de internet:
'http://xxx.xxx.xxx.xxx/testing/distribuidora/webservice/api/obtenerProductos'
y necesito descargar la info y parsearla para descargarla en mi sistema, estuve leyendo
y probando ejemplos con el hb_JsonDecode, pero no puedo hacerla funcionar con mi
dirección, probablemente me esté faltando información.
Alguien tendrá un ejemplo para construir esta descarga?
Desde ya, muchas gracias!
Roberto
Re: Archivo JSON
Posted:
Tue Aug 23, 2016 12:03 pm
by cmsoft
Si puedes descargarlo a tu equipo y despues analizarlo
- Code: Select all Expand view
#include "fivewin.ch"
function Main()
local nRet
local cFile := "c:\fwh\temp.txt"
nRet := DOWNLOADFILE( "http://xxx.xxx.xxx.xxx/testing/distribuidora/webservice/api/obtenerProductos/archivo.json", ;
cFile )
MsgStop( nRet )
RETURN NIL
#pragma BEGINDUMP
#include <Windows.h>
#include <hbapi.h>
#include "hbapiitm.h"
#include "hbstack.h"
#include <hbvm.h>
#include <urlmon.h>
HB_FUNC( DOWNLOADFILE )
{
HRESULT hr;
hr = URLDownloadToFile( NULL, hb_parc( 1 ), hb_parc( 2 ), 0, NULL );
hb_retnl( hr ) ;
}
#pragma ENDDUMP
Es una idea nomas... no se si te deja un archivo en ese sitio...
Re: Archivo JSON
Posted:
Tue Aug 23, 2016 12:15 pm
by TOTOVIOTTI
Gracias! Perfecto!!!!!
Re: Archivo JSON (Encode)
Posted:
Wed Aug 24, 2016 7:15 pm
by TOTOVIOTTI
Amigos,
después de decodificar un JSON que me enviaron, debo actualizar info y volverla
a generar en JSON.
Tengo una matriz, que contiene el Código del Artículo, Descripción y Precio Unitario, por ejemplo.
Como hago para volver a generar un archivo JSON para subirlo a una url?
Creo que se usa la función inversa hb_JsonEncode, pero no encuentro material
para ver los parámetros que se usan...
Muchas gracias!
Roberto
Re: Archivo JSON
Posted:
Wed Aug 24, 2016 7:22 pm
by karinha
Re: Archivo JSON
Posted:
Wed Aug 24, 2016 7:28 pm
by TOTOVIOTTI
Eso lo usé para descargar el Json, ahora necesito armar un archivo Json... se entiende?
El proceso inverso... subir info de una matriz a un archivo Json.
Gracias!
Roberto
Re: Archivo JSON
Posted:
Wed Aug 24, 2016 8:13 pm
by TOTOVIOTTI
Amigos... lo hice medio casero... pero funciona, capaz hay algo un poco más sofisticado...
Por ahí le sirve a alguno:
FUNCTION GENERARJSON()
Local hJson := hash()
local cJson := '{"clientes":['
(bclientes)->(dbgotop())
while !(Bclientes)->(eof())
hJson["Código"] := (bclientes)->codigo
hJson["Razón Social"] := alltrim(hb_OemToAnsi((bclientes)->NOMBRE))
hJson["Dirección"] := alltrim(hb_OemToAnsi((bclientes)->direccion))
hJson["Teléfono"] := alltrim((bclientes)->te)
hJson["C.U.I.T."] := alltrim((bclientes)->cuit)
cJson += hb_JsonEncode( hJson,.f. )
(bclientes)->(dbskip())
IF !(Bclientes)->(eof())
cJson +=","
ENDIF
enddo
cJson+=']}'
MemoWrit( "clientes.json", cJson )
RETURN NIL
Saludos...
Re: Archivo JSON
Posted:
Fri Aug 26, 2016 12:36 am
by LuisPonce
Buenas noches
En que libreria está hb_JsonEncode( )
Gracias
Re: Archivo JSON
Posted:
Fri Aug 26, 2016 12:42 pm
by TOTOVIOTTI
Es una función de Harbour...
Saludos
Re: Archivo JSON
Posted:
Tue Oct 24, 2023 6:40 pm
by elmoiquique
LuisPonce wrote:Buenas noches
En que libreria está hb_JsonEncode( )
Gracias
Hola
sabes en que
libreria esta y desde que version,,, tengo entendido que funciona tanto en Harbour como en Xharbour