Antwort auf: Mit http Ausgangsadapter eine Datei “hochladen”

    Benjamin Krueger
    Administrator
    Hallo vikl,

    Über den HEADER Bereich in der Transformation lassen sich die mit -H markierten Einträge in den HEADER der Http Request übernehmen. Das ist in diesem curl-Befehl jedoch nur für den “accept” Header notwendig. Die Auswahl der Authorisierung sowie das Angeben der Credentials kann in den Adaptereinstellungen erfolgen und der allgemeine CONTENT-TYPE steht als Attribut in der REQUEST. Der geänderte Dateiname kann über das NAME Attribut im CONTENT übergeben werden. Die in “fileUpload” definierte Datei muss dabei bereits in der einkommenden Nachricht als Anhang vorhanden sein und wird über die CONTENTID dem CONTENT zugeordnet. Der zusätzlich spezifizierte Typ kann wiederum als Attribut CONTENT-TYPE an den CONTENT hinzugefügt werden.

    Folgende Transformation sollte denselben Effekt erzeugen wie der gezeigte curl Befehl:

    <?xml version="1.0" encoding="UTF-8"?>
        <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
            <xsl:template match="/">
                <ROOT>
                    <REQUEST OPERATION="POST" EMBED="false" CONTENT-TYPE="multipart/form-data">
                        <HEADER>
                            <accept>application/json</accept>
                        </HEADER>
                        <CONTENT NAME="DateiName.csv" CONTENT-TYPE="application/vnd.ms-excel">
                            <xsl:attribute name="CONTENTID">
                                <xsl:value-of select="//FILE/@CONTENTID"/>
                            </xsl:attribute>
                        </CONTENT>
                    </REQUEST>
                </ROOT>
            </xsl:template>
        </xsl:stylesheet>

     

    Ihr TRANSCONNECT-Team

    0
    0