I am consuming a REST API from PowerBuilder 2019 R2. For this I use the HttpClient class.
When running the API from Posman, Insomnia and SoapUI the response is immediate (thousandths of a second)
However, when I run it from PowerBuilder, at best it takes 10 seconds and many times over 60 seconds and the app freezes.
inv_httpClient.ClearRequestHeaders()
// Establecer propiedades en el Header
inv_HttpClient.SetRequestHeader("Content-Type", "application/json; charset=UTF-8")
inv_httpClient.setRequestHeader( "Authorization", "Bearer" + " " + is_accessToken)
inv_HttpClient.SetRequestHeader("Content-Length", String(ll_contentLength))
inv_httpClient.Timeout = 10
lt_begin = now()
// Ejecutar el request
li_rc = inv_httpClient.sendRequest( "POST",ls_URL,lblb_data)
lt_end = now()
IF li_rc <> 1 THEN
of_setMessage( of_getErrorHttp( li_rc ))
RETURN -1
END IF
The problem occurs when running from the sources and from the executable and I have even tried with PB 2017 R3.
As a test, I have created a WebService in Java from which I run the API and returns an XML that I collect via SOAP from PowerBuilder and with this the response improves considerably and the screen does not freeze. However, bringing this scenario to production implies having a Glassfish or Tomcat web server, deploying the service, etc. and it is not viable; so I have to look for a solution to slow when executing the HttpClient.sendRequest. If you have had a similar problem I will appreciate your recommendations.
Gracias