Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerBuilder) Initialize an HTTP Request from a URLDemonstrates how to initialize an HTTP request object from a URL.
integer li_rc oleobject loo_Req integer i integer li_NumParams loo_Req = create oleobject // Use "Chilkat_9_5_0.HttpRequest" for versions of Chilkat < 10.0.0 li_rc = loo_Req.ConnectToNewObject("Chilkat.HttpRequest") if li_rc < 0 then destroy loo_Req MessageBox("Error","Connecting to COM object failed") return end if // Loads the HTTP request object from a URL loo_Req.SetFromUrl("https://www.youtube.com/watch?v=fAZdTchQePc&t=45s") // The verb will be "GET" Write-Debug "verb = " + loo_Req.HttpVerb // The path will be "/watch" Write-Debug "path = " + loo_Req.Path // The output of this loop will be // 0) v: fAZdTchQePc // 1) t: 45s li_NumParams = loo_Req.NumParams for i = 0 to li_NumParams - 1 Write-Debug string(i) + ") " + loo_Req.GetParamName(i) + ": " + loo_Req.GetParamValue(i) next // View the request that would be sent if SynchronousRequest 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 SynchronousRequest is called. Write-Debug loo_Req.GenerateRequestText() // We can add additional params loo_Req.AddParam("artist","Richard Bona") loo_Req.AddParam("musicType","Jazz") loo_Req.AddParam("festival","Estival Jazz Lugano") loo_Req.AddParam("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 // Write-Debug loo_Req.GenerateRequestText() // We can remove a parameter: loo_Req.RemoveParam("t") Write-Debug loo_Req.GenerateRequestText() // What happens if we change the request from a GET to a POST? loo_Req.HttpVerb = "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 // Write-Debug loo_Req.GenerateRequestText() // What happens if we make it a multipart/form-data? loo_Req.ContentType = "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-- Write-Debug loo_Req.GenerateRequestText() destroy loo_Req |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.