Vier D HomeArchivSeminareNachrichten - Twitter4D Expertise
Antworten auf Ihre Fragen •
Datenbank-Pflege •
4D Coaching •
OpenDDDD •
Termine •
4D Expert
V11/V12-Service • Konzepte •
Alternativen •
Meine Apps
Gebrauchtes Mac + iPhone: zu verkaufenFinden Geo-Themen + Projekte GoogleMap-Integration • GeoDDDD • Database Publishing • Database PhotographyVerschiedenes |
26 Dez 2006 Eine PerleWer es noch nicht entdeckt hat: 4D pflegt ein Code-Archiv. Da versteckt sich manche Perle. Von einer will ich berichten. Sie nennt sich HTTP Download, V11-Versionund wird so erklärt:
Eine einzige Methode, erlaubt HTTP Download von HTML oder Dokumenten (Jpg, Gif, pdf) als Blob, als Bild oder als Text. Benötigt 4D 2004.1 oder neuer und 4D Internet Commands. Da nur eine Methode, ist sie einfach in Anwendungen integrierbar. Gängige Frage mit einer leichten Antwort: Was ist meine IP?
Von Hand geht das so: Sie besuchen whatismyip.org und lesen Ihre IP im Browserfenster. Dann tragen Sie sie in 4D ein, selbst mit Kopieren & Einsetzen, ist nicht der Weisheit letzter Schluß. Sie wollen unabhängig sein von whatismyip.org? Nichts einfacher als das. Eine minimale HTML-Seite mit diesem Inhalt <html><body><p><!--#echo var="REMOTE_ADDR"--></p></body></html> anlegen und auf dem eigenen WebSpace im Zugriff halten. Das ist ein ServerSideInclude-Befehl, den kann jeder Apache. Adressen verifizieren und lokalisierenDas Navigationssystem im Auto oder im Internet befragen ist eine Methode. Im Browser sieht das bei maps.google.de so aus: Straße und Ort eingeben und auf Adresse suchen klicken. Wird die Adresse gefunden, taugt sie was. Ist mühsam, wenn es mehr als einige wenige Adressen sind.
Gehen wir den Weg allen Re-Engineerings! Eine Such-URL sieht in Google-Map so aus: Wie oben beschrieben, könnte ich mit HTTP_Download die URL verschicken und erhielte den Source-Code der Ergebnis-Seite. Diesen könnte ich parsen … muß aber nicht sein. Zu meiner Freude bietet Google die Koordinaten in effizienteren Formaten an. Das eine ist KML (Keyhole Markup Language, ich merke mir Koordinaten ML besser) ein XML-Derivat und JSON (JavaScript Object Notation), ein Format nicht nur für JavaScript.
Ich ergänze die kurze Variante der oben dargestellten URL um Nun lernen Sie die Perle ein zweites Mal kennen: schicke ich die ULR per HTTP_Download los, bekomme ich das KML-Dokument direkt in 4D zurück, wahlweise als Text oder als Blob. Text parsen oder XML-auseinandernehmen per DOM oder SAX?
HTTP_Download liefert das Ergebnis wahlweise als Text oder als Blob. Es sind nur 4 kB, dann ist Text einfacher zu handhaben Blob ist praktisch, da die DOM XML Befehle auch Blobs als Quelle akzeptieren. Nur spielen die DOM XML Befehle nicht immer mit – melden fälschlicherweise ein nicht koscheres XML. Die SAX XML Befehle sind mit den kml-Dokumenten toleranter, eignen sich für Routing-kmls. Doch leider akzeptieren SAX XML Befehle kein Blob, laden das XML nur von Platte. Andere Beispiele?Klar! Kurse abfragen oder die Bahn-Verbindung oder … weitere Beispiele, wenn denn welche kommen, werde ich hier veröffentlichen oder verlinken. * myNum wrapped die Text-in-Zahl-Konvertierung per Num, d.h. ersetzt Punkt durch Komma und umgekehrt ↵ Massenabgleich! Google hat ganz frisch (Dez '06) seine Nutzungsrechte verändert. Neu ist die Grenze von 50.000 Ortsabfragen pro Tag, mehr werden nicht mehr gewährt und die verwendete Google-ID ggf. für einen von Google festgelegten Zeitraum gesperrt. |