Ich versuche, die Ergebnisse der XML-Datei nach der Verwendung einer Google Maps API-Abfrage zu greifen, aber meine Delphi-App wirft einen "IOHandler-Wert ist nicht gültig." Error. Die "IdHTTP1.Get" Zeile scheint der Täter zu sein, aber warum?Versuch, XML-Datei nach Google Maps abzufragen Frage
Mein Ziel ist es, die Breiten- und Längenkoordinaten aus den Ergebnissen der Abfrage zu erhalten und sie in eine Datenbank zu stellen. Hier ist mein Code, der den Fehler erzeugt.
procedure TViewMaps.GetXMLBtnClick(Sender: TObject);
var
lat, lng: String;
xml: IXMLDocument;
s: TStream;
begin
// Create XML File to hard disk
s := TFileStream.Create('mydata.xml', fmCreate);
try
IdHTTP1.Get('https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=MyKey',s);
xml := TXMLDocument.Create(nil);
{xml.LoadFromXML(sName), at: xml.ChildNodes.FindNode = ('result') ChildNodes.FindNode ('formatted_address . '); }
// Load XML file for data display
XMLDocument1.LoadFromFile('mydata.xml');
XMLDocument1.Active := True;
//lat := XMLDocument1.DocumentElement;
finally
XMLDocument1.Active := False;
s.Free;
end;
end;
Welche Version von Delphi/Indyare verwenden Sie? In älteren Versionen müssen Sie einen SSL-IOHandler selbst erstellen. Vergessen Sie auch nicht, die OpenSSL-Bibliotheken einzubeziehen. – whosrdaddy
@whosrdaddy - Delphi XE6 mit Indy 10.6. – Hackbrew