DataFlex
DataFlex
HTTP Request Boundary Property
Explains and demonstrates the HTTP request Boundary property. For multipart HTTP requests, Chilkat auto-generates a boundary string when the Boundary property is left unset (or empty). For example:POST /something HTTP/1.1 Content-Type: multipart/form-data; boundary=------------090207000006060206010508 Host: domain Content-Length: 378 --------------090207000006060206010508 Content-Disposition: form-data; name="fileA"; filename="fileA.txt" Content-Type: text/plain This is the contents of file A --------------090207000006060206010508 Content-Disposition: form-data; name="fileB"; filename="fileB.txt" Content-Type: text/plain This is the contents of file B --------------090207000006060206010508--If the Boundary property is set, then Chilkat uses it. For example, if the Boundary property is set to "ABC123HELLOWORLD"
POST /something HTTP/1.1 Content-Type: multipart/form-data; boundary=ABC123HELLOWORLD Host: domain Content-Length: 318 --ABC123HELLOWORLD Content-Disposition: form-data; name="fileA"; filename="fileA.txt" Content-Type: text/plain This is the contents of file A --ABC123HELLOWORLD Content-Disposition: form-data; name="fileB"; filename="fileB.txt" Content-Type: text/plain This is the contents of file B --ABC123HELLOWORLD--
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoReq
Boolean iSuccess
String sTemp1
Get Create (RefClass(cComChilkatHttpRequest)) To hoReq
If (Not(IsComObjectCreated(hoReq))) Begin
Send CreateComObject of hoReq
End
Set ComHttpVerb Of hoReq To "POST"
Set ComPath Of hoReq To "/something"
Set ComContentType Of hoReq To "multipart/form-data"
Get ComAddStringForUpload Of hoReq "fileA" "fileA.txt" "This is the contents of file A" "utf-8" To iSuccess
Get ComAddStringForUpload Of hoReq "fileB" "fileB.txt" "This is the contents of file B" "utf-8" To iSuccess
// When the Boundary property is empty (has not yet been set)
// Chilkat auto-generates a random boundary for the request.
// This should almost always be sufficient.
// For example, one can see the generated boundary here:
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
// If the Boundary property is set to a specific string, then the
// request will use it:
Set ComBoundary Of hoReq To "ABC123HELLOWORLD"
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
End_Procedure