AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

JSON Antworten?

Offene Frage von "jaenicke"
Ein Thema von thechosen1 · begonnen am 17. Apr 2012 · letzter Beitrag vom 19. Apr 2012
Antwort Antwort
thechosen1

Registriert seit: 17. Apr 2012
4 Beiträge
 
#1

AW: JSON Antworten?

  Alt 17. Apr 2012, 22:23
Das Problem ist, dass der Internetexplorer diese Links ebensowenig handlen kann: Geb ich meine URL: "https://graph.facebook.com/me/friends?access_token=AAAAAAxxxxxxx" in die Adressleiste des IExplorers (ver. 8) ein tritt das von mir im Zusammenhang mit dem TWebbrowser beschriebene Phänomän auf: Anstelle die Antwort im Browser darzustellen öffnet sich das IE Download-Fenster. In der Regel tritt dazu die beschriebene Fehlermeldung auf.
Da IE selbst nicht richtig mit der Anfrage umgehen kann ich leider auch mit Fiddler nicht viel anfangen

Verwende ich hingegen Firefox oder Opera bekomm ich die erwartete Darstellung im Browser:
Code:
{
   "data": [
      {
         "name": "Max Mustermann",
         "id": "8989489944"
      },
      {
         "name": "Marianne Mustermann",
         "id": "4556667444"
      }
Ich muss zugeben, dass ich zwar schon eine Menge Web-basierte Programme in Delphi geschrieben habe aber bisher nie auf solche Probleme gestoßen bin und daher in diesem Bereich noch Anfänger bin (auch hinsichtlich Wireshark).
Bei meinen Recherchen bin ich auf verschiedene Quellen gestoßen in denen behauptet wird, dass die Indy Komponente überhaupt nicht mit JSON umgehen kann)
Ich frage mich, ob es nicht eine einfache Methode gibt, die JSON Antwort als TStrings zu bekommen?

In Visual C# lässt es sich beispielsweiße ziemlich einfach realisieren: (Kan man in Delphi auf diese .NET Funktion zugreifen?)
Code:
 
try
 {
  Antwort = myWebClient.DownloadData(GraphURL);
  MessageBox.Show(System.Text.Encoding.ASCII.GetString(Antwort));              
 }
Dummerweiße habe ich bereits mehrere Wochen in die restlichen Teile des Programms gesteckt (FB Chat, Photoupload etc.) und möchte deswegen ungern auf C# umsteigen
(Eine Notlösung wäre es ein weiteres Programm in C# zu schreiben, dass die friendlist zurück an das delphi gibt)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: JSON Antworten?

  Alt 17. Apr 2012, 22:33
Die Indys brauche auch mit JSON nicht umgehen, weil das ist einfacher Text der zurückgeliefert wird - nur halt strukturiert
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#3

AW: JSON Antworten?

  Alt 17. Apr 2012, 22:38
Wenn es die anderen Browser annehmen, dann könnte es auch in Richtung Content-Type gehen, afaik verhält sich der IE da manchmal komisch
Fiddler funktioniert auch mit Firefox.
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#4

AW: JSON Antworten?

  Alt 18. Apr 2012, 00:49
Du benötigst einen JSON-Parser, den es auch in Delphi gibt.
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#5

AW: JSON Antworten?

  Alt 18. Apr 2012, 06:25
Das kann ja alles sein, aber sein Problem ist Momentan eher, dass Indy eine Zugriffsverletzung ausgiebt. TIdHTTP kümmert sich ja nicht um den Inhalt, sondern lädt ihn nur runter. Es muss nachwievor an HTTPS liegen.

TWebBrowser ist m.E. dafür sowieso absolut nicht das richtige.

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#6

AW: JSON Antworten?

  Alt 18. Apr 2012, 08:12
Das kann ja alles sein, aber sein Problem ist Momentan eher, dass Indy eine Zugriffsverletzung ausgiebt. TIdHTTP kümmert sich ja nicht um den Inhalt, sondern lädt ihn nur runter.
Das ist ein Irrglaube.
Es gibt mehrere Seiten, bei denen Indy mit einer Zugriffsverletzung aussteigt.

Da bisher aber weder die genaue Exception noch der Stacktrace gepostet wurden, kann ich dazu auch nix näheres sagen... bisher ließ sich das immer lösen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
thechosen1

Registriert seit: 17. Apr 2012
4 Beiträge
 
#7

AW: JSON Antworten?

  Alt 19. Apr 2012, 11:25
Vielen Dank für all die Antworten!
Wie ich herausfinden musste war der Grund für die Zugriffsverletzungsfehler scheinbar die Indy version. Ich habe Indy 10 verwendet und nach einem downgrade auf version 9 funktioniert alles wie gewollt
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#8

AW: JSON Antworten?

  Alt 19. Apr 2012, 15:18
Sinnvoller wäre es aber gewesen dem Fehler auf den Grund zu gehen. Mit Debuggen und schauen wo die Exception eigentlich auftritt lässt sich das meistens herausfinden. Ähnliche Fragen gab es schon ein paarmal.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz