Italian community of Lazarus and Free Pascal

Programmazione => Lazarus e il web => Topic aperto da: AndreaM - Novembre 19, 2015, 04:00:03 pm

Titolo: Synapse HttpGetText
Inserito da: AndreaM - Novembre 19, 2015, 04:00:03 pm
Salve,
Vorrei usare HttpGetTest, per fare una richiesta di dati a Google Maps Geocoding API
dovrei usare questo URL:
https://maps.googleapis.com/maps/api/geocode/xml?address=Perugia&key=AIzaSyBRL5hOzbq1S2-__iZz-_p8dzPOAv6Rr9c

(questo URL inserito nel browser restituisce correttamente i dati)

Ma la funzione HttpGetTest mi restituisce sempre un errore se passo questo URL, probabilmente non supporta SSL? Questa è una mia ipotesi ovviamente!

Se invece passo questo URL: www.google.it, la funzione mi restituisce correttamente un testo.

Ammetto che non sono molto ferrato nell'uso di synapse.
Mi potete dare un suggerimento?
Grazie
Andrea

Titolo: Re:Synapse HttpGetText
Inserito da: nomorelogic - Novembre 19, 2015, 04:11:37 pm
il problema è che devi attivare SSL e, se non ricordo male basta mettere in uses ssl_openssl
Titolo: Re:Synapse HttpGetText
Inserito da: AndreaM - Novembre 19, 2015, 05:49:37 pm
Ok ora funziona, ma la cosa strana è che ho dovuto portare le unit ssl_openssl.pas e ssl_openssl_lib.pas, nella stessa cartella del programma.
Altrimenti Lazarus mi diceva che non trovava i file, che erano presenti nella cartella dove risiedono tutti i file di synapse.
Strano, vede synacode, httpsend e non vede i file ssl?
C'è un motivo particolare?
Grazie per il valido aiuto!
Andrea
Titolo: Re:Synapse HttpGetText
Inserito da: nomorelogic - Novembre 19, 2015, 07:31:13 pm
intendi che hai dovuto copiare i 2 file nella cartella del tuo programma?

non dovrebbe essere così, prova ad impostare (in opzioni progetto / percorsi) le path di ricerca nella cartella di synapse
Titolo: Re:Synapse HttpGetText
Inserito da: AndreaM - Novembre 21, 2015, 09:45:24 am
Il problema della visibilità dei file sorgenti è stato risolto.

Ora però provando il progetto su un'altro PC ho scoperto che HttpGetText non funziona se l'URL è del tipo HTTPS://... mentre se è del tipo HTTP://... o WWW....  si!
Nella clausola uses c'è ovviamente ssl_openssl
Credo che il problema sia legato alle OpenSSL!
Sarà che in questo PC ho un router?? Mi sembra strano!!!
Non so che fare  :-\
Grazie per l'aiuto  :)
Titolo: Re:Synapse HttpGetText
Inserito da: nomorelogic - Novembre 21, 2015, 10:20:37 am
verifica l'installazione che hai nei 2 pc di OpenSSL e/o OpenVpn e/o qualsiasi software che possa installare
bisogna capire che versioni hai di queste DLL

come prova potresti copiare le 2 DLL (che sono nel PC in cui funziona) all'interno della stessa cartella del tuo progetto delpc dove non funziona e poi provare di nuovo
Titolo: Re:Synapse HttpGetText
Inserito da: AndreaM - Novembre 21, 2015, 10:59:59 am
Io questi file non li ho nel PC incriminato  :o :o
Ma non sono inclusi nella libreria Synapse??
Dove dovrebbero essere? Nella cartella dove risiede la libreria synapse?
Provo a cercarli sul WEB!

Titolo: Re:Synapse HttpGetText
Inserito da: nomorelogic - Novembre 21, 2015, 11:36:43 am
li hai nel pc dove funziona

hai installato OpenVpn o OpenSSL?
cmq basta che fai copia/incolla nella cartella del progetto