Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.090 Beiträge
 
Delphi 12 Athens
 
#143

AW: Delphi 11.3 schon da?

  Alt 4. Mär 2023, 12:45
Ist auch mittlerweile für mich schwierig das nachzuverfolgen, da ich alle 11.2 schon auf 11.3 upgedated habe. Lediglich theoretisch anhand der RTL-Sourcen kann ich das versuchen zu analysieren.

Das Problem war für mich ganz sicher in 11.2 schon vorhanden, aber der Report sagt ja lediglich, dass application/json nicht erkannt wird, worauf das JSONValue Property nicht gefüllt wurde. Bei dir ist das zwar auch so, aber mit 11.3 ist zusätzlich der Content leer.

Den 11.3 Code habe ich damit noch gar nicht probiert, aber da ich den Workaround noch eingebaut habe gehe ich davon aus, dass TMimeTypes.Default.GetTypeInfo immer noch den korrekten Mimetype liefert und die in 11.3 eingebaute Fallback-Lösung (vermutlich ein Fix für RSP-39994) nicht relevant ist.

Ich kenne jetzt nicht die Bandbreite der in deinem Fall ankommenden ContentType. Wenn das eine überschaubare Menge ist, könntest du die ja auch vorab registrieren. Bei mir habe ich das in einen class constructor für die API-Klasse gemacht:
Delphi-Quellcode:
class constructor TDevOpsApi.ClassCreate;
begin
  for var I := 2 to 4 do
    TMimeTypes.Default.AddType('json', Format('application/json; api-version=7.1-preview.%d', [I]), TMimeTypes.TKind.Text, True);
end;
Alternativ kannst du auch über RawBytes an die Daten kommen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat