PureBasic
PureBasic
Create MIME Containing XML
See more MIME Examples
Calls SetBodyFromXml to load XML into the MIME body. Also sets the Content-Type header to "text/xml", and the Content-Transfer-Encoding to an appropriate transfer encoding based on the characters found in the XML.Chilkat PureBasic Downloads
IncludeFile "CkMime.pb"
Procedure ChilkatExample()
success.i = 0
; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
mime.i = CkMime::ckCreate()
If mime.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Add a few header fields:
success = CkMime::ckAddHeaderField(mime,"Description","this is a test")
success = CkMime::ckAddHeaderField(mime,"MyId","123")
xmlData.s = "<something>123</something>"
; Set the mime body via SetBodyFromXml. This also
; has the intended side-effect of adding the Content-Type
; and Content-Transfer-Encoding headers.
success = CkMime::ckSetBodyFromXml(mime,xmlData)
Debug CkMime::ckGetMime(mime)
; The MIME should look like this:
; Description: this is a test
; MyId: 123
; Content-Type: text/xml;
; Content-Transfer-Encoding: 7bit
;
; <something>123</something>
; Note: The Content-Transfer-Encoding may be changed.
; For example, to use "base64", do this:
CkMime::setCkEncoding(mime, "base64")
; Show the MIME again, this time using the base64
; transfer encoding:
Debug CkMime::ckGetMime(mime)
; It should look like this:
; Description: this is a test
; MyId: 123
; Content-Type: text/xml;
; Content-Transfer-Encoding: base64
;
; PHNvbWV0aGluZz4xMjM8L3NvbWV0aGluZz4=
CkMime::ckDispose(mime)
ProcedureReturn
EndProcedure