Das sieht irgendwie nach HTTP Multipart-Request aus. Dort kann man quasi Formularparameter einzeln angeben.
bodyContentType sollte eine Combox sein. Du kannst da reinschreiben was du willst. Ändere das einfach ab wie du es brauchst.
Hmm wir schauen uns das an.
Kannst du bitte auch noch mal rein kopieren, was genau bei bodyContentType bei dir drin steht?
Damit können wir mal testen, ob evtl. dieser Inhalt nicht korrekt geparst wird.
Wir haben noch eine Stelle, wo das Charset nicht korrekt weitergegeben wurde und somit immer ISO-8859-1 genommen wurde.
Ein Fix ist in Arbeit.
Der Fix ist fertig gestellt und wird mit dem nächsten Deployment verteilt. Wir sagen nochmal Bescheid.
Hallo Micha,
der Fix ist jetzt auf den Servern verteilt.
Viele Grüße
Torsten
Du musst unbedingt multipart/form-data; charset=UTF-8 nehmen. Ansonsten erkennen wir es nicht als Multipart und dann funktioniert das ganze mit den Key=Value Formularfeldern nicht.
Also wir haben wie folgt getestet um den Bug sichtbar zu machen:
Wir haben den Request an http://requestbin.net/ geschickt (also dort mal so ein private bin erstellen und dorthin POSTen)..
Nach unserem Fix sah es so aus: Es wurde UTF-8 übermittelt.
Vor unserem Fix stand da immer ISO-XXX, egal was du angegeben hast... also so wie du es berichtet hast.
Kannst du das auch mal gegen requestbin schicken und uns das Ergebnis inklusive deiner exakten APICAll Konfiguration schicken?
Am besten auch im Vergleich mit deinem POSTMan.
Wir müssen mal rausfinden, an welcher Stelle jetzt noch ISO-XXX übermittelt wird, so dass sich deine API beschwert.
Danke die Logs sind auch hilfreich. Requestbin ist halt eine schicke Möglichkeit einen Request sichtbar zu machen, was wirklich auf der Gegenseite ankommt.
Was schon auffällt:
POSTMAN: schickt multipart, aber kein Charset.
Content-Type: multipart/form-data; boundary=.....
Synesty schickt charset=UTF-8
Content-Type: multipart/form-data; boundary=R-6UPJjM96MytJ5V0txdYqftyyCDAxVristpnTCc; charset=UTF-8
(das boundary-Zeug kommt automatisch dazu...)
Hast du bei Synesty schonmal versucht das charset wegzulassen?
also nur multipart/form-data; bei bodyContentType?
Hast du davon auch noch mal einen Log?
Danke. Wir schauen uns das im Detail an.
Hier nur kurz:
Du kannst gern auch nochmal im Texteditor beide Requests nebeneinander legen. ISO-8859-1 wird von uns nirgends mitgeschickt. Uns ist schleierhaft, warum die API den Fehler {code":106,"message":"Encoding not supported","data":{"encoding":"ISO-8859-1"}} wirft.
Auffällig ist, dass POSTMan einige HTTP-Header weglässt wie z.B. Accept-Encoding (was du uns leer übermittelt wird). Vielleicht stört sich die API daran.
Evtl. kannst du mal bei den requestHeaders folgendes Accept-Encoding=application/json; charset=utf-8 mitgeben.
(Zumindest scheint deren API mit Content-Type: application/json; charset=utf-8 zu antworten)
1. Hast du eine Doku der API, wo das grob steht, was die alles im Request erwarten?
2. Hast du zufällig auch ein log von der PostMan Response?
3. Kannst du bei Postman mal versuchen "Accept-Encoding:" (also leer) mitzugeben und schauen, ob der Fehler kommt? Evtl. stört sich die API an irgendeinem header, den wir zusätzlich mitschicken wie z.B. User-Agent.