Jak mogę określić, kiedy usługa internetowa jest dostępna (on-line)? w Delphi lub C#?Określ, kiedy usługa internetowa jest dostępna.
Odpowiedz
Wystarczy wykonać prawidłowe połączenie z serwisem WWW. Jeśli przekroczy limit czasu lub wystąpi błąd 404, usługa internetowa nie jest dostępna.
Spróbuj go użyć. Jeśli to działa, to jest dostępne. Jeśli nie, to nie jest (lub masz problemy z połączeniem sieciowym między tobą a serwerem). Tu nie ma żadnej magii.
Można spróbować tej metody ..
public bool IsAddressAvailable(string address)
{
try
{
using(System.Net.WebClient client = new WebClient())
{
client.DownloadData(address);
return true;
}
}
catch
{
return false;
}
}
... i nazwać tak ...
MessageBox.Show(IsAddressAvailable("http://localhost/my.webservices/mywebservice.asmx").ToString());
Wreszcie napisałem ten kod w Delphi .NET
function WebService_OnLine(UrlWebService:String): Boolean;
Var
urlCheck : uri;
request : WebRequest;
response : WebResponse;
begin
MemoLogWebService.Lines.Add('Testing WebService');
urlCheck := Uri.Create(UrlWebService);
request := WebRequest.CreateDefault(urlCheck);
request.Timeout := 20000;
try
response :=request.GetResponse();
MemoLogWebService.Lines.Add(response.Headers.ToString);
Result:=True;
except
on E : Exception do
Begin
MemoLogWebService.Lines.Add(E.Message);
Result:=False;
End;
end;
End;
PS: Dziękuję bardzo za udzielenie mi inspiracji.
Należy zawęzić pułapkę wyjątków do wyjątków opartych na komunikacji. Rzadko, jeśli chcesz złapać wyjątek, ponieważ może to być katastrofalny błąd i wyjątki związane z komunikacją. –
- 1. Czy dostępna jest bezpłatna baza danych lub usługa internetowa dla informacji muzycznych (albumów, wykonawców, utworów)?
- 2. Czy jest dostępna bezpłatna usługa internetowa dla informacji o utworze i albumie?
- 3. Kiedy usługa Response.IsClientConnected jest wolna?
- 4. Sprawdź, czy strona internetowa jest dostępna pod numerem telefonu
- 5. Czy dostępna jest usługa SaaS do rejestrowania aktywności użytkowników?
- 6. Czy usługa Azure ACL jest dostępna dla usługi w chmurze?
- 7. Usługa internetowa REST w python 3?
- 8. Pierwsza umowa XSD - Usługa internetowa Soap WCF
- 9. Usługa internetowa zapewniająca powiadomienia przez wiele transportów
- 10. Wiosna: przesyłanie plików Usługa internetowa RESTFUL
- 11. Co oznacza aplikacja internetowa RESTful?
- 12. Scena SpriteKit nie jest dostępna
- 13. Czy jest dostępna aplikacja internetowa "dodaj do ekranu głównego" w systemie Android (jak w iOS)?
- 14. Co to jest usługa serwisowa i kiedy jej potrzebuję?
- 15. Usługa internetowa na bazie aktorów - jak to zrobić właściwie?
- 16. Usługa internetowa wywołująca iOS nie działa w trybie 4g
- 17. Usługa internetowa Microsoft CRM 3.0 za pośrednictwem PHP Klasa Mydła
- 18. Usługa internetowa Java Async REST korzystająca z usługi Jersey?
- 19. Kiedy usługa GoogleGlayServicesAvailable zwraca usługę SERVICE_VERSION_UPDATE_REQUIRED?
- 20. implementacja yaml2xml/xml2yaml jest dostępna?
- 21. Sprawdź, czy intencja jest dostępna.
- 22. Kiedy programista zmienia nazwę aplikacji, czy stara staje się dostępna?
- 23. Czy definicja jest dostępna dla Qt gui?
- 24. Tablica JavaScript nie jest dostępna jako tablica
- 25. JavaFX: Osadzanie przeglądarki innej niż dostępna przeglądarka internetowa za pomocą JavaFX
- 26. Czy dostępna jest platforma Django Book?
- 27. Określ, czy adres e-mail jest "publiczny"
- 28. Sprawdź, czy dostępna jest funkcja intri
- 29. Żadna obudowa typu ... nie jest dostępna.
- 30. Dziennik dla bazy „x” nie jest dostępna
Podoba mi się (i wykorzystałem to, dziękuję!), Ale sugerowałbym dodanie instrukcji USING podczas tworzenia obiektu klienta. Zwłaszcza, że jest to ping, który będzie używany dużo, ważne jest, aby go usunąć. –
Tak. Odpowiednio zaktualizuję swoją odpowiedź. – lkg