XML POST



  • Hi Leute,

    brauche mal eure Meinung.

    Ich bekomme per HTTP ein XML-File. Dieses Kommt per POST.
    Um es jedoch lesbar zu machen muss man es zuerst durch URLDECODE schicken.

    Ist das Normal?

    Dachte immer das man POSTDATEN nicht zuerst ENCODEN muss.
    Insbesondere XML.



  • Unix-Tom schrieb:

    Ich bekomme per HTTP ein XML-File. Dieses Kommt per POST.
    Um es jedoch lesbar zu machen muss man es zuerst durch URLDECODE schicken.

    Ist das Normal?

    Ich denke nicht, dass das besonders unnormal ist - hängt aber wohl vom übermittelten Content-type ab, denke ich.
    Als Beispiel mal der Code den ich vor ein paar Tagen hier gepostet hatte - dort wurde x-www-form-urlencoded als Content-type angegeben und dann ist es ja nicht verwunderlich, dass man die Daten durch ein URLDECODE schicken muss 😉



  • Im Content-type steht URLENCODE aber denke das es unüblich ist oder?



  • Ich hab jetzt keine Statistik, aber so wie ich das verstanden habe werden z.B. Formulare normalerweise immer urlencoded übertragen 🙄



  • Das würde sowieso nicht funktionieren da der Content nicht decoded ist.



  • In gewisser Weise hast du schon Recht, aber in der Funktion selber ist dies nur noch gegrenzt möglich, da ja die einzelnen Werte urlencoded werden müssen und nicht der ganze String mit den Daten 😉
    Aber sollte man evtl. noch dazu schreiben, dass man die einzelnen Parameter durch ein urlencoden laufen lassen sollte (falls nötig)



  • $data_to_send gehört URLDECODED.
    Danach erst die Länge berechnet.



  • Ich denke, dass eben so wie sonst auch die Werte urlencoded werden müssen, sodass das Ganze dann in etwa so aussieht:

    $data_to_send = 'var1='.urlencode($var1).'&var2='.urlencode($var2).'&var3='.urlencode($var3);
    PostToHost(..., $data_to_send);
    

Log in to reply