Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api (https://www.delphipraxis.net/212730-delphi-11-3-aenderung-im-oauth2-microsoft-graph-api.html)

oakley 23. Mär 2023 08:36

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Ja das ist die vollständige Fehlermeldung. Mehr bekomme ich im Debug auch nicht.
Das Kommt an der Stelle LRequest.Execute. Pkl

Delphi-Quellcode:
    LCLient.Authenticator := OA;
    LClient.BaseURL := 'https://login.microsoftonline.com/07a9e2f0-5a0e-406c-a7ff-7b3ab1976b0e/oauth2/v2.0/token';
    LCLient.SynchronizedEvents := false;
    LRequest := TRESTRequest.Create(LClient);
    LRequest.Method := TRESTRequestMethod.rmPOST;

    LRequest.AddAuthParameter('client_id', OA.ClientID, TRESTRequestParameterKind.pkREQUESTBODY);
    LRequest.AddAuthParameter('scope', OA.scope, TRESTRequestParameterKind.pkREQUESTBODY);
    LRequest.AddAuthParameter('code', FAuthCode, TRESTRequestParameterKind.pkREQUESTBODY);
    LRequest.AddAuthParameter('redirect_uri', OA.RedirectionEndpoint, TRESTRequestParameterKind.pkREQUESTBODY);
    LRequest.AddAuthParameter('grant_type', 'authorization_code', TRESTRequestParameterKind.pkREQUESTBODY);

    LRequest.Execute; <- Hier kommt der Fehler
Kann sein, dass das von Microsoft kommt. Wie gesagt ich habe es gestern Abend in 11.2 versucht und da lief es einwandfrei.
Vorhin einfach kompiliert ohne Änderungen in 11.3 und da kam direkt der Fehler.

Der AuthCode wird auch vergeben das ist nicht das Problem.

Die Base URL ist ja https://... , ich habe im LClient aber nirgendwo die Nutzung von SSL oder TLS angegeben.
Kann es daran liegen?

LG

Mirko

Union 23. Mär 2023 08:59

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Eigentlich nicht, da der RestClient nicht auf den Indy basiert sondern die jeweilige OS Funktionalität der Plattform nutzt.

Bbommel 23. Mär 2023 09:20

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Vielleicht ein Hinweis dazu: Emba hat in 11.3 die REST-API im Zusammenspiel mit Microsoft Graph/OData kaputtgemacht (RSP-40726, RSP-40757). Da die Antwort beim OAuth2 selbst auch als JSON kommt und hier ja auch die RestRequest-Komponenten genutzt werden, könnte es sein, dass der Fehler hier auch schon zuschlägt.

oakley 23. Mär 2023 09:29

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Ja sehr geil und ich fummel hier rum. Danke für die Info. Dann wieder zurück zu 11.2 .

Edit: Zurück auf 11.2 Probleme mit dem TMS Pack. Interner Fehler URW8074 .

LG

Mirko

juergen 23. Mär 2023 16:21

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Update rückwärts, siehe hier.

Edit: Falls jemand das in Zukunft hier liest

oakley 26. Apr 2023 13:57

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Hallo zusammen,

sollte mit dem 11.3 Patch 1 das Problem nicht eigentlich behoben sein?
Also ich habe folgendes gemacht:

Keine Testprogramm das mit dem obigen Code anmeldet und einen Token bekommt einmal unter Delphi 11.2 auf einer VM laufen lassen und einmal auf einer 11.3.

Die 11.2 macht alles wie gewünscht, loggt ein und ich kann abfragen starten.
Die 11.3 zeigt mit bei Anfrage des Tokens: Oauth2 ist nicht richtig eingerichtet .
In Wirklichkeit steckt ein Bad Request dahinter, den ich als Fehler vom MS Graph API Endpoint zurück bekomme.

Ich habe jetzt versucht das Verzeichnis C:\Program Files (x86)\Embarcadero\Studio\22.0\source\data\rest aus der 11.2 in die 11.3 zu kopieren (altes Verzeichnis vorher umbenannt).
Leider ohne Erfolg, ich bekomme immer noch den selben Fehler.

LG

Mirko

TurboMagic 26. Apr 2023 17:45

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Hast du schon mal in QP https://quality.embarcadero.com geschaut,
ob das irgendwie bekannt ist? Ist zes möglich das in ein einfachstes Testprogramm zu packen und falls noch nicht
gemeldet dort zusammen mit dem Testprogramm zu melden? Report Nummer hier posten, falls du's meldest, nicht vergessen! ;-)

Grüße
TurboMagic

Uwe Raabe 26. Apr 2023 22:54

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Zitat:

Zitat von oakley (Beitrag 1521570)
Ich habe jetzt versucht das Verzeichnis C:\Program Files (x86)\Embarcadero\Studio\22.0\source\data\rest aus der 11.2 in die 11.3 zu kopieren (altes Verzeichnis vorher umbenannt).
Leider ohne Erfolg, ich bekomme immer noch den selben Fehler.

Da diese Sourcen lediglich als Referenz gedacht sind und für die Compilierung gar nicht herangezogen werden, ist das nicht verwunderlich.

oakley 27. Apr 2023 10:11

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Hallo Uwe,

Du hattest mal irgendwo geschrieben, dass man aus der 11.2 Dateien in die 11.3 kopieren kann um das Problem zu lösen.
Oder war das was anderes?

LG

Mirko

Bbommel 27. Apr 2023 10:59

AW: Delphi 11.3 Änderung im OAuth2 Microsoft Graph Api
 
Hm, ich habe gerade mal mein Programm mit D11.3 Patch 1 getestet und über eine Microsoft-REST-API sowohl ein OAuth2-Token abgefragt und damit dann auch die eigentliche API genutzt. Hat alles problemlos funktioniert - der Fehler an sich in der Delphi-Bibliothek scheint mir also korrigiert zu sein (ohne mir jetzt aus Zeitgründen die Sourcen von Delphi nochmal angesehen zu haben).

Insofern wird der Fehler bei dir irgendwo anders liegen.

Was Uwe meinte: du müsstest die betroffenen Bibliotheken von D11.2, die noch funktionieren, in dein Projektverzeichnis kopieren. Dann werden diese benutzt anstelle der originalen Bibliotheken von D11.3. Dazu wäre es natürlich ideal, wenn du rausfinden würdest, wo genau der Fehler in den Delphi-Bibliotheken verursacht wird, um die passende dann auszutauschen.

Mich selbst macht etwas misstrauisch, dass es bei mir funktioniert. Insofern wäre es ja spannend, mal genauer zu schauen, was der Fehler ist. Im Response ist normalerweise auch bei einem Fehler 400 noch ein JSON mit weiteren Infos zum Fehler.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:16 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz