csharp-l | | | |
leandro79337933 | |
Hola Sergio,
luego de contestarte empecé a hacer unas pruebas y armé un PRC muy sencillo
donde le puse Call protocol = HTTP. No le puse Main asi no me antepone la
"a" pero no debería alterar las pruebas.
*El codigo del PRC es asi:*
""""""""""""""""""""""""
If &httpRequest.Method = 'GET'
// 'OK method'
Else
// 'Bad method'
Endif
&request_body = &httpRequest.ToString() // aqui viene el
{"parm1":"abc", "parm2":1349, "parm3":"def"} desde el WebPanel
// Armamos la respuesta
&httpResponse.AddHeader('Content-Type', 'application/json')
&response_body = '{'
&response_body += '"Su Id": ' + &su_Id.ToString() + ','
&response_body += '"Mi Id": ' + &mi_Id.ToString()
&response_body += '}'
&httpResponse.AddString(&response_body)
""""""""""""""""""""""""
*Luego, arme un WebPanel para consumirlo con el siguiente código:*
""""""""""""""""""""""""
Event 'HomeMadeRESTService'
&httpClient.Host = '127.0.0.1'
&httpClient.Port = 8080
&httpClient.BaseUrl = '/CafeLindoJavaEnvironment/servlet/'
&httpClient.AddHeader('Content-type','application/json')
// &httpClient.AddHeader('Accept','application/json') // Quizas
necesites agregar esto, en mi caso no fue necesario
&httpClient.AddString('{"parm1":"abc", "parm2":1349, "parm3":"def"}')
&httpClient.Execute('GET','com.cafelindo.homemaderestservice')
&response_body = &httpClient.ToString()
Endevent
""""""""""""""""""""""""
y, en &response_body queda el JSON que arme en el PRC.
La unica diferencia es que yo uso Java. Voy a probar con Net a ver si
funciona de la misma manera.
También tenes muchas opciones para hacer pruebas, yo uso mucho *curl*, hay
un port para Windows, buscalo por google. Sino, tenes RESTClient que lo
podes descargar desde aqui:
http://code.fosshub.com/WizToolsorg-RESTClient/downloads. Podes usar
httpie tambien, o los mismos navegadores (a veces chusmeo con Firefox) para
hacer los requests. Muchos usan tambien Postman o SoapUI pero me parecen
muy pesados para hacer un simple request.
Slds
On Thu, Oct 22, 2020 at 1:42 PM Sergio Rzeszytkowski |
|
|
|
|
Back to csharp-l |
|