Sample code for 30+ languages & platforms
PowerBuilder

Socket Convenience Method: BuildHttpGetRequest

See more Socket/SSL/TLS Examples

Demonstrates the BuildHttpGetRequest method.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
oleobject loo_Socket
string ls_Url
string ls_ReqStr
oleobject loo_Req

//  The BuildHttpGetRequest method is a convenience method for building
//  an HTTP GET request.  Normally, an application would use Chilkat's HTTP or REST API's
//  for sending HTTP requests.  

loo_Socket = create oleobject
li_rc = loo_Socket.ConnectToNewObject("Chilkat.Socket")
if li_rc < 0 then
    destroy loo_Socket
    MessageBox("Error","Connecting to COM object failed")
    return
end if

ls_Url = "http://www.chilkatsoft.com/test.asp?x=123&y=456"
ls_ReqStr = loo_Socket.BuildHttpGetRequest(ls_Url)
Write-Debug ls_ReqStr
Write-Debug "----"

//  The result is:

//  	GET /test.asp?x=123&y=456 HTTP/1.1
//  	Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
//  	Connection: keep-alive
//  	User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0
//  	Accept-Language: en-us,en;q=0.5
//  	Host: www.chilkatsoft.com

//  The result is meant to look like a request from a browser.

//  The same thing can be done using the Url and HttpRequest classes, but with more flexibility.

loo_Req = create oleobject
li_rc = loo_Req.ConnectToNewObject("Chilkat.HttpRequest")

loo_Req.SetFromUrl(ls_Url)
ls_ReqStr = loo_Req.GenerateRequestText()
Write-Debug ls_ReqStr
Write-Debug "----"

//  The result is:

//  	GET /test.asp?x=123&y=456 HTTP/1.1
//  	Host: domain

//  Add some headers..
loo_Req.AddHeader("Host","www.chilkatsoft.com")
loo_Req.AddHeader("Accept-Language","en-us,en;q=0.5")
loo_Req.AddHeader("Some-Other-Header","123456")

ls_ReqStr = loo_Req.GenerateRequestText()
Write-Debug ls_ReqStr

//  The result is now:

//  	GET /test.asp?x=123&y=456 HTTP/1.1
//  	Host: www.chilkatsoft.com
//  	Accept-Language: en-us,en;q=0.5
//  	Some-Other-Header: 123456


destroy loo_Socket
destroy loo_Req