Forum > Networking and Web Programming
TFPHTTPClient and Exception
(1/1)
phlr_fr:
Good morning and Happy New year for everybody,
I have some problems with the use of TFPHTTPClient that is why I decided to test it in a test project.
The code in my test project don't do no more than this :
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- try vlHttpClient := TFPHTTPClient.Create(nil); vlString := vlHttpClient.post('http://localhost/testImp/index.php?p0=1&p1=b&p2=c&p3=d'); vlStatusCode := vlHttpClient.ResponseStatusCode; except showmessage('Coucou 1'); end; vlHttpClient.Free;
I want to test :
1) the site and the page are OK
2) the site exists but the page isn't ok
3) the site doesn't exist
4) there is no internet
1) vlStatusCode=200, no message, good response
=> OK
2) I modify line 3 like this
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- vlString := vlHttpClient.post('http://localhost/testImp/blablabla.php?p0=1&p1=b&p2=c&p3=d'); => vlStatusCode=404, no message
=> OK
3) I modify line 3 like this
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- vlString := vlHttpClient.post('http://blablabla/testImp/index.php?p0=1&p1=b&p2=c&p3=d'); => Window 'Debug error notification' : host name resolution for 'blablabla' failed
Clic on button 'Continue' => 'Coucouc 1' appears
4) I modify line 3 like this
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- vlString := vlHttpClient.post('http://localhost/testImp/index.php?p0=1&p1=b&p2=c&p3=d'); but I stop the webserver and no Wifi
=> Window 'Debug error notification' : Connect to localhost:80 failed
Clic on button 'Continue' => 'Coucouc 1' appears
I don't understand why the try doesn't catch this exception in case 3 and 4, and how to do to catch it and avoid this exception's window.
Thanks for advance for your responses.
Philippe
Win 7
Lazarus V 1.8.4
Laragon as test webserver
Leledumbo:
EVERY exception will be caught by the debugger BEFORE your except block. Open the attached dialog and add the exception name to the list or simply press continue.
Navigation
[0] Message Index