Difference between revisions of "THttpCli"

From Overbyte
Jump to navigation Jump to search
Line 1: Line 1:
 
== Overview ==
 
== Overview ==
  
'''unit''' HttpProt
+
*'''unit''' HttpProt.pas
 +
*'''inheritance'''
  
THttpCli component is implementing the HTTP protocol described in RFC [http://rfc.net/rfc1945.html 1945] and RFC [http://rfc.net/rfc2068.html 2068]. HTTP protocol is the standard protocol for browsing the World Wide Web.
+
THttpCli component is implementing the HTTP protocol described in RFC [[http.//rfc.net/rfc1945.html 1945]] and RFC [[http.//rfc.net/rfc2068.html 2068]]. HTTP protocol is the standard protocol for browsing the World Wide Web.
  
 
== Properties ==
 
== Properties ==
  
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Accept Accept]
+
{|
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:AcceptLanguage AcceptLanguage]
+
| valign="top" width="150" | [[THttpCli.Accept | Accept]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:AcceptRanges AcceptRanges]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Agent Agent]
+
| [[THttpCli.AcceptLanguage | AcceptLanguage]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:AuthorizationRequest AuthorizationRequest]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Connection Connection]
+
| [[THttpCli.AcceptRanges | AcceptRanges]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ContentLength ContentLength]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ContentRangeBegin ContentRangeBegin]
+
| [[THttpCli.Agent | Agent]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ContentRangeEnd ContentRangeEnd]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ContentType ContentType]
+
| [[THttpCli.AuthorizationRequest | AuthorizationRequest]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ContentTypePost ContentTypePost]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Cookie Cookie]
+
| [[THttpCli.Connection | Connection]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:CtrlSocket CtrlSocket]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:DnsResult DnsResult]
+
| [[THttpCli.ContentLength | ContentLength]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:DocName DocName]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:FollowRelocation FollowRelocation]
+
| [[THttpCli.ContentRangeBegin | ContentRangeBegin]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Handle Handle]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Hostname Hostname]
+
| [[THttpCli.ContentRangeEnd | ContentRangeEnd]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:LastResponse LastResponse]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:LocalAddr LocalAddr]
+
| [[THttpCli.ContentType | ContentType]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Location Location]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ModifiedSince ModifiedSince]
+
| [[THttpCli.ContentTypePost | ContentTypePost]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:MultiThreaded MultiThreaded]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:NoCache NoCache]
+
| [[THttpCli.Cookie | Cookie]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Options Options]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Protocol Protocol]
+
| [[THttpCli.CtrlSocket | CtrlSocket]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Proxy Proxy]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ProxyConnection ProxyConnection]
+
| [[THttpCli.DnsResult | DnsResult]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ProxyPort ProxyPort]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:RcvdCount RcvdCount]
+
| [[THttpCli.DocName | DocName]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:RcvdHeader RcvdHeader]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:RcvdStream RcvdStream]
+
| [[THttpCli.FollowRelocation | FollowRelocation]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:ReasonPhrase ReasonPhrase]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Reference Reference]
+
| [[THttpCli.Handle | Handle]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:RequestVer RequestVer]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Sender Sender]
+
| [[THttpCli.Hostname | Hostname]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SendStream SendStream]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SentCount SentCount]
+
| [[THttpCli.LastResponse | LastResponse]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksAuthentication SocksAuthentication]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksLevel SocksLevel]
+
| [[THttpCli.LocalAddr | LocalAddr]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksPassword SocksPassword]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksPort SocksPort]
+
| [[THttpCli.Location | Location]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksServer SocksServer]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:SocksUsercode SocksUsercode]
+
| [[THttpCli.ModifiedSince | ModifiedSince]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:State State]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:StatusCode StatusCode]
+
| [[THttpCli.MultiThreaded | MultiThreaded]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:TransferEncoding TransferEncoding]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:URL URL] - Complete URL to act on
+
| [[THttpCli.NoCache | NoCache]] ||||
 +
|-
 +
| [[THttpCli.Options | Options]] ||||
 +
|-
 +
| [[THttpCli.Protocol | Protocol]] ||||
 +
|-
 +
| [[THttpCli.Proxy | Proxy]] ||||
 +
|-
 +
| [[THttpCli.ProxyConnection | ProxyConnection]] ||||
 +
|-
 +
| [[THttpCli.ProxyPort | ProxyPort]] ||||
 +
|-
 +
| [[THttpCli.RcvdCount | RcvdCount]] ||||
 +
|-
 +
| [[THttpCli.RcvdHeader | RcvdHeader]] ||||
 +
|-
 +
| [[THttpCli.RcvdStream | RcvdStream]] ||||
 +
|-
 +
| [[THttpCli.ReasonPhrase | ReasonPhrase]] ||||
 +
|-
 +
| [[THttpCli.Reference | Reference]] ||||
 +
|-
 +
| [[THttpCli.RequestVer | RequestVer]] ||||
 +
|-
 +
| [[THttpCli.Sender | Sender]] ||||
 +
|-
 +
| [[THttpCli.SendStream | SendStream]] ||||
 +
|-
 +
| [[THttpCli.SentCount | SentCount]] ||||
 +
|-
 +
| [[THttpCli.SocksAuthentication | SocksAuthentication]] ||||
 +
|-
 +
| [[THttpCli.SocksLevel | SocksLevel]] ||||
 +
|-
 +
| [[THttpCli.SocksPassword | SocksPassword]] ||||
 +
|-
 +
| [[THttpCli.SocksPort | SocksPort]] ||||
 +
|-
 +
| [[THttpCli.SocksServer | SocksServer]] ||||
 +
|-
 +
| [[THttpCli.SocksUsercode | SocksUsercode]] ||||
 +
|-
 +
| [[THttpCli.State | State]] ||||
 +
|-
 +
| [[THttpCli.StatusCode | StatusCode]] ||||
 +
|-
 +
| [[THttpCli.TransferEncoding | TransferEncoding]] ||||
 +
|-
 +
| [[THttpCli.URL | URL]] |||| Complete URL to act on
 +
|}
  
 
== Methods ==
 
== Methods ==
  
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Abort Abort]
+
{|
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Close Close]
+
| valign="top" width="150" | [[THttpCli.Abort | Abort]] |||| align test
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:CloseAsync CloseAsync]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Create Create]
+
| [[THttpCli.Close | Close]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Destroy Destroy]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Get Get]
+
| [[THttpCli.CloseAsync | CloseAsync]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:GetASync GetASync]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Head Head]
+
| [[THttpCli.Create | Create]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:HeadASync HeadASync]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Post Post]
+
| [[THttpCli.Destroy | Destroy]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:PostASync PostASync]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:Put Put]
+
| [[THttpCli.Get | Get]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:PutASync PutASync]
+
|-
 +
| [[THttpCli.GetASync | GetASync]] ||||
 +
|-
 +
| [[THttpCli.Head | Head]] ||||
 +
|-
 +
| [[THttpCli.HeadASync | HeadASync]] ||||
 +
|-
 +
| [[THttpCli.Post | Post]] ||||
 +
|-
 +
| [[THttpCli.PostASync | PostASync]] ||||
 +
|-
 +
| [[THttpCli.Put | Put]] ||||
 +
|-
 +
| [[THttpCli.PutASync | PutASync]] |||| align test
 +
|}
  
 
== Events ==
 
== Events ==
  
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnBeforeHeaderSend OnBeforeHeaderSend]
+
{|
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnCommand OnCommand]
+
| valign="top" width="150" | [[THttpCli.OnBeforeHeaderSend | OnBeforeHeaderSend]] |||| align test
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnCookie OnCookie]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnDataPush OnDataPush]
+
| [[THttpCli.OnCommand | OnCommand]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnDataPush2 OnDataPush2]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnDocBegin OnDocBegin]
+
| [[THttpCli.OnCookie | OnCookie]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnDocData OnDocData]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnDocEnd OnDocEnd]
+
| [[THttpCli.OnDataPush | OnDataPush]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnHeaderBegin OnHeaderBegin]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnHeaderData OnHeaderData]
+
| [[THttpCli.OnDataPush2 | OnDataPush2]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnHeaderEnd OnHeaderEnd]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnLocationChange OnLocationChange]
+
| [[THttpCli.OnDocBegin | OnDocBegin]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnRequestDone OnRequestDone]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnRequestHeaderBegin OnRequestHeaderBegin]
+
| [[THttpCli.OnDocData | OnDocData]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnRequestHeaderEnd OnRequestHeaderEnd]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSendBegin OnSendBegin]
+
| [[THttpCli.OnDocEnd | OnDocEnd]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSendData OnSendData]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSendEnd OnSendEnd]
+
| [[THttpCli.OnHeaderBegin | OnHeaderBegin]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSessionClosed OnSessionClosed]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSessionConnected OnSessionConnected]
+
| [[THttpCli.OnHeaderData | OnHeaderData]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSocketError OnSocketError]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSocksAuthState OnSocksAuthState]
+
| [[THttpCli.OnHeaderEnd | OnHeaderEnd]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSocksConnected OnSocksConnected]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnSocksError OnSocksError]
+
| [[THttpCli.OnLocationChange | OnLocationChange]] ||||
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnStateChange OnStateChange]
+
|-
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:OnTrace OnTrace]
+
| [[THttpCli.OnRequestDone | OnRequestDone]] ||||
 +
|-
 +
| [[THttpCli.OnRequestHeaderBegin | OnRequestHeaderBegin]] ||||
 +
|-
 +
| [[THttpCli.OnRequestHeaderEnd | OnRequestHeaderEnd]] ||||
 +
|-
 +
| [[THttpCli.OnSendBegin | OnSendBegin]] ||||
 +
|-
 +
| [[THttpCli.OnSendData | OnSendData]] ||||
 +
|-
 +
| [[THttpCli.OnSendEnd | OnSendEnd]] ||||
 +
|-
 +
| [[THttpCli.OnSessionClosed | OnSessionClosed]] ||||
 +
|-
 +
| [[THttpCli.OnSessionConnected | OnSessionConnected]] ||||
 +
|-
 +
| [[THttpCli.OnSocketError | OnSocketError]] ||||
 +
|-
 +
| [[THttpCli.OnSocksAuthState | OnSocksAuthState]] ||||
 +
|-
 +
| [[THttpCli.OnSocksConnected | OnSocksConnected]] ||||
 +
|-
 +
| [[THttpCli.OnSocksError | OnSocksError]] ||||
 +
|-
 +
| [[THttpCli.OnStateChange | OnStateChange]] ||||
 +
|-
 +
| [[THttpCli.OnTrace | OnTrace]] ||||
 +
|}
  
 
== FAQ ==
 
== FAQ ==
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:FAQ:Timeout How to implement a timeout for THttpCli in my application?]
+
 
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:FAQ:Progress How to implement a progress for THttpCli in my application?]
+
[[THttpCli.FAQ.Timeout | How to implement a timeout for THttpCli in my application?]]
* [http://wiki.overbyte.be/wiki/index.php/THttpCli:FAQ:SizeLimit How to implement a download size limitation for THttpCli in my application?]
+
 
 +
[[THttpCli.FAQ.Progress | How to implement a progress for THttpCli in my application?]]
 +
 
 +
[[THttpCli.FAQ.SizeLimit | How to implement a download size limitation for THttpCli in my application?]]

Revision as of 19:14, 18 February 2006

Overview

  • unit HttpProt.pas
  • inheritance

THttpCli component is implementing the HTTP protocol described in RFC http.//rfc.net/rfc1945.html 1945 and RFC http.//rfc.net/rfc2068.html 2068. HTTP protocol is the standard protocol for browsing the World Wide Web.

Properties

Accept
AcceptLanguage
AcceptRanges
Agent
AuthorizationRequest
Connection
ContentLength
ContentRangeBegin
ContentRangeEnd
ContentType
ContentTypePost
Cookie
CtrlSocket
DnsResult
DocName
FollowRelocation
Handle
Hostname
LastResponse
LocalAddr
Location
ModifiedSince
MultiThreaded
NoCache
Options
Protocol
Proxy
ProxyConnection
ProxyPort
RcvdCount
RcvdHeader
RcvdStream
ReasonPhrase
Reference
RequestVer
Sender
SendStream
SentCount
SocksAuthentication
SocksLevel
SocksPassword
SocksPort
SocksServer
SocksUsercode
State
StatusCode
TransferEncoding
URL Complete URL to act on

Methods

Abort align test
Close
CloseAsync
Create
Destroy
Get
GetASync
Head
HeadASync
Post
PostASync
Put
PutASync align test

Events

OnBeforeHeaderSend align test
OnCommand
OnCookie
OnDataPush
OnDataPush2
OnDocBegin
OnDocData
OnDocEnd
OnHeaderBegin
OnHeaderData
OnHeaderEnd
OnLocationChange
OnRequestDone
OnRequestHeaderBegin
OnRequestHeaderEnd
OnSendBegin
OnSendData
OnSendEnd
OnSessionClosed
OnSessionConnected
OnSocketError
OnSocksAuthState
OnSocksConnected
OnSocksError
OnStateChange
OnTrace

FAQ

How to implement a timeout for THttpCli in my application?

How to implement a progress for THttpCli in my application?

How to implement a download size limitation for THttpCli in my application?