Konfigurierbarer ContentType bei Oauth-Requests?

Hallo zusammen,

ich habe eine API, bei welcher man sich über OAuth authoriziert. Diese erwartet jedoch als Content-Type NUR „application/json“. Also ohne „;charset=utf-8“. Wenn man ein Charset mitschickt, läuft die API auf einen 400-Fehler.

Ich würde natürlich trotzdem gerne eine HTTP-Verbindung dafür benutzen. Wäre es möglich, dass ihr die den Content-Type konfigurierbar macht?

Gruß
Gustav

Hallo Gustav,

die OAuth 2.0 requests sollten alle den Content-Type application/x-www-form-urlencoded (nach RFC 6749 - The OAuth 2.0 Authorization Framework) haben. Kannst du mir evtl. sagen bei welchem request der Content-Type application/json;charset=utf-8 gesetzt wird oder mir eine Beispiel-Konfiguration der HTTP-Verbindung schicken.

VG Torsten

Hallo Torsten,

Dann ist das Problem nicht das Charset, sondern der content-type im Generellen. Von der API wird dort eben „application/json“ gefordert.
https://integrator.ascendrms.com/docs/ecommerce-api/POST%20%2Fapi%2Fpublic%2Ftoken

Die Anfrage mit application/json;charset=utf-8 kam aus einem manuell APICall, in dem ich die Autorisierung nachgebaut hatte. Was bei euer Konfiguration der Verbindung geschickt wird, kann man ja garnicht nachvollziehen. Ich weiß nur, dass sowohl meine Anfrage als auch der Versuch, die Konfiguration der Verbindung zu durchlaufen, einen Fehler wirft.

Keinen Fehler hatte ich nur in meinem manuellen APICall, wenn ich dort mit application/json abrufe.

Gruß
Gustav

Ah, ok verstehe. Es ist eigentlich kein „richtiges“ OAuth2, aber die Felder heißen genauso und müssen als JSON geschickt werden. Wir schauen mal, ob wir das irgendwo noch mit in der HTTP Verbindung unterbringen können.

1 Like

Hallo Gustav,

es steht jetzt eine neue Option Request Content Type bei den HTTP Verbindungen (OAuth 2.0 - Grant Type: Client Credentials). Frei kon­fi­gu­rier­bar können wir den Content Type an der Stelle nicht machen, aber wir haben neben dem OAuth 2.0 Standard (application/x-www-form-urlencoded) noch „application/json“ hinzugefügt. Ich hoffe das hilft dir weiter.

VG Torsten

2 Likes