Page 1 of 1

Ayuda con RESTFULL, Rafa Carmona (Solucionado)

PostPosted: Sun Mar 18, 2018 10:50 pm
by sjingo
Saludos cordiales

El tema es que estoy iniciando un nuevo proyecto y me interesa mucho crear un API RESTFULL, y mejor si es con Harbour.

Buscando por internet me topé con una de las publicaciones de la conferencia de usuarios de harbour, y me llenó de esperanza al enterarme que se puede usar harbour para crear un servidor RESTFULL, por lo que me puse manos a la obra.

Pero me he complicado mucho, porque es mucho tiempo que no me he dedicado a harboaur y ya me he olvidado hasta cosas básicas.

Quiero hacer funcionar la contribución de Rafa, pero no puedo.

He instalado harbour 3.2 desde el instalador , el cual viene ya con MingW. Probé el test típico de hola mundo, y generó el ejecutable correspondiente sin ningún problema, por lo que yo pensaría que está listo para su uso.

Como la versión instalada de harbour 3.2 no contenía el archivo core.prg al que hace mención, procedí a bajar la versión de harbour que se encuentra en el Git Hub, y de allí copié para reemplazar toda la carpeta hbhttpd de mi harbour instalado.
Finalmente en la raíz de la carpeta hbhttpd tengo copiado todos los archivos de código fuente facilitado por Rafa mas el archivo core. Y ahora.... qué hago?

Rafa por favor, necesito una guía paso a paso :oops: , para hacer las pruebas necesarias, también ya tengo instalado Postman para Windows.

Agradezco infinitamente a este foro por existir.

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Tue Mar 20, 2018 1:39 am
by sjingo
Me he puesto a revisar bien el comando que se usa para construir la aplicación, y veo que fue una falla garrafal mía .... originalmente lo tenía así:
C:\hb32\contrib\hbhttpd>..\bin\hbmk2 restful.hbm
y obtenía el error : El sistema no puede encontrar la ruta especificada.
Y me doy cuenta que lo que faltaba era retroceder una carpeta más, es decir lo correcto fue:
C:\hb32\contrib\hbhttpd>..\..\bin\hbmk2 restful.hbm

Y ha generado la aplicación. Pero ahora, al momento de ejecutarlo obtengo un mensaje de error del sistema, que dice que no puede continuar porque no se encontró LIBEAY32.dll, y que reinstale. Luego en otro mensaje dice que no encontró SSLEAY32.dll y se cierra.

Ya estoy investigando sobre esto, pero si alguien puede ayudarme, se lo agradecería mucho.

Saludos

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Tue Mar 20, 2018 1:56 am
by cnavarro
Marcelo, descarga

https://bitbucket.org/fivetech/fivewin- ... GOOGLE.zip

Ahi están las DLLs ya que yo las utilizo para atacar la APIs de Google

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Tue Mar 20, 2018 2:06 am
by sjingo
Gracias Cristóbal por tan rápida respuesta. Las dlls en mensión si se encuentran en la distribución de harbour 32, de lo que veo son parte de Mingw. De seguro me falta algo que añadir. De todas formas bajaré el zip que me compartes, los reemplazaré y te cuento.

Un saludo

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Tue Mar 20, 2018 3:14 am
by sjingo
No funcionó, el problema persiste. :(

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Tue Mar 20, 2018 5:01 pm
by sjingo
Cristóbal, para aclarar lo que quiero es probar el servidor (https://medium.com/harbour-magazine/servidor-restful-con-harbour-935ed2fe8615) para las api rest, que Rafa Carmona lo está desarrollando. De momento no quiero consumir aun ninguna API. Es por eso que estoy tratando de compilar, y me he encontrado con esos errores, y no se si se debe crear un exe o una lib.

alguna otra pista?

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 2:06 am
by sjingo
Alejarme un poco de Harbour y FWH, me está pasando factura, :? , peor aún si antes trabajaba con BCC, y ahora que quiero retomarlo usando HB 32 con MingW, todo esto es como empezar de nuevo. Me siento bloqueado!, pero bueno voy con calma. Volvamos a lo que estaba.

Les comento que he copiado todos los dll que pedía en la ruta de la aplicación en cuestión, y he avanzado un poquito más, desaparecieron los errores. Pero ahora la aplicación se queda como esperando algo. Le doy enter y sale el error:

Error DBCMD/1015 Argument error: RDDSETDEFAULT
Called from RDDSETDEFAULT(0)
Called from MAIN(49)

Y es evidente que es porque no está cargando el RDD por defecto que se lo llama desde rddSetDefault( "DBFCDX" ). Y creo que el tema es de nuevo por asunto de algunas variables de entorno que debería configurar para que compile todo lo que necesita. Pero no sé como hacerlo.

Alguien tiene algún archivo bat que me facilite construir la aplicación. Pero creo que ya estoy cerca.

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 2:10 am
by cnavarro
Marcelo, sé perfectamente que lo que quieres construir es hbhttpd.lib para poder construir los ejemplos
Qué version de fw y harbour estás utilizando?

En cuanto al error que comentas, has de poner al principio de tu programa

REQUEST DBFCDX

y linkar la correspondiente libreria de Harbour

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 2:41 am
by sjingo
Gracias Cristóbal por contestar

Tengo entendido que el servidor que Rafa está desarrollando no necesita de FW. Escucha las peticiones GET, PUT, ..., de cualquier otra aplicación.

Estoy usando HB 3.2 bajado de esta dirección http://sourceforge.net/projects/harbour-project/files/binaries-windows/nightly/harbour-nightly-win.exe/download, esta versión viene incluido el MingW

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 7:20 am
by Antonio Linares

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 1:14 pm
by sjingo
Antonio

Efectivamente esa es la aplicación de Rafa que lo bajé y estoy intentando generarla para probarla. Y aún ando enredado en el tema, je je. Una ayudita please.

Y lo que me indica Cristóbal, es lo que me hace falta, pero, no se cómo hacer o donde poner la correspondiente librería para el linkeado. :oops:

Saludos cordiales

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 2:14 pm
by sjingo
Parcialmente solucionado!, gracias Cristóbal, efectivamente sólo hacía falta colocar al inicio REQUEST DBFCDX. Ahora por lo menos ya se obtiene el mensaje "Listening on port: 8002" pero inmediatamente termina con el siguiente mensaje: "Server error: Invalid config option 'PostProcessRequest' ".

Esto si ya es parte de la aplicación, y creo que Rafa Carmona es quien puede ayudar. Con todo seguiré revisando. Ya falta solo un pelín.

Gracias mil.

Re: Ayuda con RESTFULL, Rafa Carmona

PostPosted: Wed Mar 21, 2018 2:21 pm
by cnavarro
Llevo utilizando el código original de Mindaugas Kavaliuskas bastante tiempo y nunca he tenido ese mensaje.
Esto es lo último en este tema, junto con el añadido de Rafa que publicó

https://groups.google.com/forum/#!searc ... 8Z0_rKAwAJ

https://medium.com/harbour-magazine/res ... 5e59335cf7

https://github.com/rafathefull/restful

Re: Ayuda con RESTFULL, Rafa Carmona (Solucionado)

PostPosted: Thu Mar 22, 2018 2:00 am
by sjingo
El objetivo ha sido alcanzado.

El mensaje de error se corrigió modificando el archivo core.prg, en la variable ::hconfig.

Con esto he podido reproducir y probar el servidor restfull. Gracias a Rafa Carmona por la iniciativa, y por el apoyo recibido por Cristóbal y Antonio. Gracias a este grupo. :D

Saludos!

Re: Ayuda con RESTFULL, Rafa Carmona (Solucionado)

PostPosted: Fri Jan 25, 2019 4:00 am
by mag071
Saludos ;

Igual como en este POST me puse a recrear hbhttpd.lib para usarla con los ejemplos de restful de rafa
y ya he podido bajar
hb32
con la version que viene con mingw
pero he llegado hasta Invalid Config Option ´PostProcessRequest'

ya he modificado el core.prg tal y como lo indica el post de medium de harbour magazine
ahora necesito de nuevo generar el .lib hbhttpd.lib para mingw
como lo hago ???
es que es primera vez que uso mingw
o si me pueden facilitar la .lib hbhttpd con la modificacion del core.prg que indica rafa.

Gracias de antemano.