PureBasic
PureBasic
Socket Convenience Method: BuildHttpGetRequest
See more Socket/SSL/TLS Examples
Demonstrates the BuildHttpGetRequest method.Chilkat PureBasic Downloads
IncludeFile "CkHttpRequest.pb"
IncludeFile "CkSocket.pb"
Procedure ChilkatExample()
; 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.
socket.i = CkSocket::ckCreate()
If socket.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
url.s = "http://www.chilkatsoft.com/test.asp?x=123&y=456"
reqStr.s = CkSocket::ckBuildHttpGetRequest(socket,url)
Debug reqStr
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.
req.i = CkHttpRequest::ckCreate()
If req.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkHttpRequest::ckSetFromUrl(req,url)
reqStr = CkHttpRequest::ckGenerateRequestText(req)
Debug reqStr
Debug "----"
; The result is:
; GET /test.asp?x=123&y=456 HTTP/1.1
; Host: domain
; Add some headers..
CkHttpRequest::ckAddHeader(req,"Host","www.chilkatsoft.com")
CkHttpRequest::ckAddHeader(req,"Accept-Language","en-us,en;q=0.5")
CkHttpRequest::ckAddHeader(req,"Some-Other-Header","123456")
reqStr = CkHttpRequest::ckGenerateRequestText(req)
Debug 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
CkSocket::ckDispose(socket)
CkHttpRequest::ckDispose(req)
ProcedureReturn
EndProcedure