How to send a MIME message as is

R

Ryan H

Hi,

I've been using WebClient.UploadFile to upload a XML file to a URL via HTTP
POST. I now have to build something that attaches another file (PDF) to the
XML file and upload that.

I found out how to create a Multipart MIME Message but I don't know how to
send it as is. I tried using WebClient.UploadFile but it doesn't work since
it sends my Multipart MIME Message using MIME.

How do I send my Multipart MIME Message as is?

Here is the Multipart MIME Message I'm trying to send:


POST /cXML HTTP/1.0
Content-Type: multipart/mixed;boundary=-----_asdfasdfasdf;
type="text/xml"; start="<[email protected]>"

-------_asdfasdfasdf
content-disposition: attachment;
content-transfer-encoding: 7bit
Content-Type: text/xml;
Content-ID: <[email protected]>


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM
"http://xml.cxml.org/schemas/cXML/1.2.014/InvoiceDetail.dtd">
<cXML>
<Header>
<To>
<Credential domain="NetworkID">
<Identity>791-T</Identity>
</Credential>
</To>
<Sender>
<Credential domain="NetworkID">
</Credential>
</Sender>
</Header>
<Request deploymentMode="test">

</Request>
</cXML>

-------_asdfasdfasdf
content-disposition: attachment;
content-transfer-encoding: base64
Content-Type: application/pdf;
Content-ID: <[email protected]>


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
g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9J3cnPz4NCmVuZHN0cmVhbQ1lbmRvYmoNNSAwIG9iajw8L01vZERhdGUoRDoyMDA5MDEyODE2MjEwOC0wOCcwMCcpL0NyZWF0aW9uRGF0ZShEOjIwMDkwMTI4MTYyMTA4LTA4JzAwJykvVGl0bGUoTmV3IFRleHQgRG9jdW1lbnQudHh0KS9DcmVhdG9yKFBTY3JpcHQ1LmRsbCBWZXJzaW9uIDUuMi4yKS9Qcm9kdWNlcihBY3JvYmF0IERpc3RpbGxlciA2LjAgXChXaW5kb3dzXCkpL0F1dGhvcihSRUgpPj4NZW5kb2JqDXhyZWYNCjAgNg0KMDAwMDAwMDAwMCA2NTUzNSBmDQowMDAwMDA0NTY1IDAwMDAwIG4NCjAwMDAwMDQ1OTggMDAwMDAgbg0KMDAwMDAwNDYyMSAwMDAwMCBuDQowMDAwMDA0NjcxIDAwMDAwIG4NCjAwMDAwMDgwNjcgMDAwMDAgbg0KdHJhaWxlcg0KPDwvU2l6ZSA2Pj4NCnN0YXJ0eHJlZg0KMTE2DQolJUVPRg0K

-------_asdfasdfasdf--
 
J

Jeroen Mostert

Ryan said:
I've been using WebClient.UploadFile to upload a XML file to a URL via HTTP
POST. I now have to build something that attaches another file (PDF) to the
XML file and upload that.
Not a language question, so I'm setting f'up to .general.
I found out how to create a Multipart MIME Message but I don't know how to
send it as is. I tried using WebClient.UploadFile but it doesn't work since
it sends my Multipart MIME Message using MIME.

How do I send my Multipart MIME Message as is?
Using WebClient.UploadString() should keep your data as-is.
POST /cXML HTTP/1.0
Content-Type: multipart/mixed;boundary=-----_asdfasdfasdf;
type="text/xml"; start="<[email protected]>"
Note that the POST isn't part of the message, neither is the Content-Type.
The former is added automatically and the latter should be set through
WebClient.Headers.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top