DataFlex
DataFlex
Initialize an HTTP Request from a URL
See more HTTP Examples
Demonstrates how to initialize an HTTP request object from a URL.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoReq
Integer i
Integer iNumParams
String sTemp1
String sTemp2
Get Create (RefClass(cComChilkatHttpRequest)) To hoReq
If (Not(IsComObjectCreated(hoReq))) Begin
Send CreateComObject of hoReq
End
// Loads the HTTP request object from a URL
Send ComSetFromUrl To hoReq "https://www.youtube.com/watch?v=fAZdTchQePc&t=45s"
// The verb will be "GET"
Get ComHttpVerb Of hoReq To sTemp1
Showln "verb = " sTemp1
// The path will be "/watch"
Get ComPath Of hoReq To sTemp1
Showln "path = " sTemp1
// The output of this loop will be
// 0) v: fAZdTchQePc
// 1) t: 45s
Get ComNumParams Of hoReq To iNumParams
For i From 0 To (iNumParams - 1)
Get ComGetParamName Of hoReq i To sTemp1
Get ComGetParamValue Of hoReq i To sTemp2
Showln i ") " sTemp1 ": " sTemp2
Loop
// View the request that would be sent if HttpSReq is called.
// The HTTP request will be a GET that looks like this:
//
// GET /watch?v=fAZdTchQePc&t=45s HTTP/1.1
// Host: domain
//
// Note: The HOST header will automatically get filled in with the actual domain when HttpSReq is called.
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
// We can add additional params
Send ComAddParam To hoReq "artist" "Richard Bona"
Send ComAddParam To hoReq "musicType" "Jazz"
Send ComAddParam To hoReq "festival" "Estival Jazz Lugano"
Send ComAddParam To hoReq "year" "2008"
// Now examine the request that would be sent
//
// GET /watch?v=fAZdTchQePc&t=45s&artist=Richard%20Bona&musicType=Jazz&festival=Estival%20Jazz%20Lugano&year=2008 HTTP/1.1
// Host: domain
//
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
// We can remove a parameter:
Send ComRemoveParam To hoReq "t"
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
// What happens if we change the request from a GET to a POST?
Set ComHttpVerb Of hoReq To "POST"
// The request will now look like this:
//
// POST /watch HTTP/1.1
// Host: domain
// Content-Length: 93
//
// v=fAZdTchQePc&artist=Richard%20Bona&musicType=Jazz&festival=Estival%20Jazz%20Lugano&year=2008
//
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
// What happens if we make it a multipart/form-data?
Set ComContentType Of hoReq To "multipart/form-data"
// Now the POST looks like this:
//
// POST /watch HTTP/1.1
// Content-Type: multipart/form-data; boundary=------------020906020106050705030807
// Host: domain
// Content-Length: 545
//
// --------------020906020106050705030807
// Content-Disposition: form-data; name="v"
//
// fAZdTchQePc
// --------------020906020106050705030807
// Content-Disposition: form-data; name="artist"
//
// Richard Bona
// --------------020906020106050705030807
// Content-Disposition: form-data; name="musicType"
//
// Jazz
// --------------020906020106050705030807
// Content-Disposition: form-data; name="festival"
//
// Estival Jazz Lugano
// --------------020906020106050705030807
// Content-Disposition: form-data; name="year"
//
// 2008
// --------------020906020106050705030807--
Get ComGenerateRequestText Of hoReq To sTemp1
Showln sTemp1
End_Procedure