Hallo!
Ich ich stehe vor der Herausforderung einen SOAP-Request gegen einen SAP-WS abzusetzen.
Dem Request müssen 1..n Attachments mitgegeben werden. Der Request soll MTOM encoded sein.
Die XML-Struktur, welche die Nutzdaten enthält, welche wir übermitteln sollen haben wir bereits. Diese wird über eine andere Anwendung erzeugt.
Diese kann auch bereits über einen Powershell-Aufruf (invoke-webrequest) übermittelt werden.
Neu steht die Anforderung nun im Raum auch Attachments mitzusenden.
Ich kann über die Anwendung die XML-Struktur grundsätzlich erweitern und die Attachements referenzieren.
Allerdings müssen die Dateien (PDFs/TIF) ja encodiert werden und die gesamte Nachricht als eine Multipart-Nachricht aufgebaut werden.
Kann mir die Powershell das irgendwie abnehmen?
Hat jemand ein Beispiel dazu?
Hier die Struktur, wie die aussehen müsste, wenn Sie fertig ist. Den SOAP-Envelope-Teil erzeugen wir heute bereit ohne die Attachment-Informationen.
------=_Part_0_1507038467.1582212087031
Content-Type: text/xml; charset=utf-8
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP:Body>
<Documents>
<Document>
<ServiceAttachmentReferences>
<ServiceAttachmentReference>
<Id>969650</Id>
</ServiceAttachmentReference>
</ServiceAttachmentReferences>
</Document>
<Document>
<ServiceAttachmentReferences>
<ServiceAttachmentReference>
<Id>969651</Id>
</ServiceAttachmentReference>
</ServiceAttachmentReferences>
</Document>
</Documents>
<AttachmentReferences>
<AttachmentReference>
<ReferenceId>969650</ReferenceId>
<Attachment>
<AttachmentId>969650</AttachmentId>
<MimeType>image/tiff</MimeType>
<CheckSum>e138bf7be3e7a167cd4ad27c7c360adc</CheckSum>
</Attachment>
</AttachmentReference>
<AttachmentReference>
<ReferenceId>969651</ReferenceId>
<Attachment>
<AttachmentId>969651</AttachmentId>
<MimeType>application/pdf</MimeType>
<CheckSum>31f1143ed2a9addfb82da36fe1e75509</CheckSum>
</Attachment>
</AttachmentReference>
</AttachmentReferences>
</SOAP:Body>
</SOAP:Envelope>
------=_Part_0_1507038467.1582212087031
Content-Type: application/pdf
Content-ID: <969651>
Content-Disposition: attachment;filename="969651.pdf"
NAME: 969651
Content-Description: 969651
%PDF-1.7
%�쏢
7 0 obj
<</Length 8 0 R/Filter /FlateDecode>>
stream
......
.....
<</Size 55/Root 1 0 R/Info 2 0 R/ID[<E7DF8E2769864D0B2B0B3232929CDB53><cc1cf3a56175301d7a4e13b8a189423b>]/Prev 117367>>
startxref
178232
%%EOF
------=_Part_0_1507038467.1582212087031
Content-Type: image/tiff
Content-ID: <969650>
Content-Disposition: attachment;filename="969650.tif"
NAME: 969650
Content-Description: 969650
II*
....
....
------=_Part_0_1507038467.1582212087031--