CkHttp Java Programming
|
| Name | Value |
|---|---|
| SocketConnect | hostname:port, called when initiating a connection. |
| SocketConnected | hostname:port, called after successfully connected. |
| HttpProxyConnect | hostname:port |
| SslHandshake | "Starting"/"Finished" |
| HttpGetBegin | URL |
| HttpCacheHit | "Returning page from cache." |
| HttpInfo | various conditions... "Begin reading response" -- called when beginning to read the response. "Finished reading response" "Existing connection with HTTP server no longer open, restarting GET with new connection." "Reading chunked response." "UnGzipping response data" "Connection:close header is present" |
| GetRequest | the full HTTP GET request to be sent to the server. |
| ResponseHeader | the header of the HTTP response. |
| HttpStatusCode | HTTP response status code (integer) |
| ChunkSize | Size (in bytes) of next chunk in response. |
| ResponseContentLength | Non-chunked response size in bytes. |
| UnGzippedLength | If the response was gzip compressed, this is the uncompressed size. |
| HostnameResolve | hostname, Called when starting to resolve a hostname (to an IP address) |
| ResolvedToIp | dotted IP address, called after hostname is resolved. |
| HttpAuth | one of the following strings: "Starting Negotiate Authentication" "Starting NTLM Authentication" "Adding Basic Authentication Header" "Adding Proxy Authentication Header" "Starting Proxy NTLM Authentication" "Starting Digest Authentication" |
| CookieToSend | Value of a Set-Cookie header field to be added to the outgoing request. |
| SavingCookie | XML of cookie being persisted. |
| HttpRedirect | Redirect URL |
| Socks4Connect | domain:port |
| Socks5Connect | domain:port |
| HttpRequestBegin | Verb (such as POST, GET, PUT), domain:port/path |
| RequestHeader | The full HTTP request header to be sent. |
| StartSendingRequest | Size of entire request, including header, in number of bytes. (Not called for QuickGet) For uploads, this is the size of the entire upload (headers and all files combined) |
| SubPartHeader | The header for one of the parts within a multipart request. |
| UploadFilename | The file about to be uploaded (streamed from file to socket..) |
// Returns an integer value
get_LMFactor( )
// v is an integer (input)
put_LMFactor( v )
An integer between 1 and 100 that indicates the percentage of time from the HTTP page's last-modified date that will be used for the freshness period. The default value is 25. For example, if a page is fetched with a last-modified date of 4 weeks ago, and the LMFactor = 25, then the page will be considered fresh in the cache for 1 week (25% of 4 weeks).
// strContentType is a CkString object (output)
get_LastContentType( strContentType )
The content-type of the last HTTP response received by the HTTP component.
// str is a CkString object (output)
LastErrorHtml( str )
Error information in HTML format for the last method called.
// str is a CkString object (output)
LastErrorText( str )
Error information in plain-text format for the last method called.
// str is a CkString object (output)
LastErrorXml( str )
Error information in XML format for the last method called.
// str is a CkString object (output)
get_LastHeader( str )
The text of the last HTTP header sent by any of this class's methods. The purpose of this property is to allow the developer to examine the exact HTTP header for debugging purposes.
// str is a CkString object (output)
get_LastModDate( str )
The value of the Last-Modified header in the last HTTP response received by the HTTP component.
// strHeader is a CkString object (output)
get_LastResponseHeader( strHeader )
The entire last response header for the last HTTP response received by the HTTP component.
// Returns an integer value
get_LastStatus( )
The last HTTP status value received by the HTTP component.
// str is a CkString object (output)
get_Login( str )
// v is a string (input)
put_Login( v )
The HTTP login for pages requiring a login/password. Chilkat HTTP can do both Basic and NTLM HTTP authentication. (NTLM is also known as SPA (or Windows Integrated Authentication). To use NTLM, set the NtlmAuth property = true.
// str is a CkString object (output)
get_LoginDomain( str )
// newVal is a string (input)
put_LoginDomain( newVal )
The optional domain name to be used with NTLM / Kerberos / Negotiate authentication.
// Returns an integer value
get_MaxConnections( )
// n is an integer (input)
put_MaxConnections( n )
The maximum number of simultaneous open HTTP connections managed by the HTTP component. The Chilkat HTTP component automatically manages HTTP connections. If the number of open HTTP connections is about to be exceeded, the connection with the least recent activity is automatically closed.
// Returns an integer value
get_MaxFreshPeriod( )
// numMinutes is an integer (input)
put_MaxFreshPeriod( numMinutes )
Limits the amount of time a document can be kept "fresh" in the cache. The MaxFreshPeriod is specified in minutes, and the default value is 525600 which is equal to 1 year.
// Returns an integer value
get_MaxResponseSize( )
put_MaxResponseSize( n )
The maximum HTTP response size to be accepted by the calling program. A value of 0 (the default) indicates that there is no maximum value.
// Returns an integer value
get_MaxUrlLen( )
// n is an integer (input)
put_MaxUrlLen( n )
The Http class will automatically fail any URL longer than this length. The default MaxUrlLen is 800 characters.
// Returns a boolean value
get_MimicFireFox( )
// b is a boolean (input)
put_MimicFireFox( b )
If set to true, then the appropriate headers to mimic Mozilla/FireFox are automatically added to requests sent via the QuickGet and QuickGetStr methods.
// Returns a boolean value
get_MimicIE( )
// b is a boolean (input)
put_MimicIE( b )
If set to true, then the appropriate headers to mimic Internet Explorer are automatically added to requests sent via the QuickGet and QuickGetStr methods.
// Returns an integer value
get_MinFreshPeriod( )
// numMinutes is an integer (input)
put_MinFreshPeriod( numMinutes )
The freshness period for a document in cache will not be less than this value (in minutes). The default value is 30.
// Returns a boolean value
get_NegotiateAuth( )
// newVal is a boolean (input)
put_NegotiateAuth( newVal )
Set this property equal to true for Negotiate authentication. Negotiate authentication will dynamically select Kerberos or NTLM authentication depending on what the server requires.
// Returns a boolean value
get_NtlmAuth( )
// b is a boolean (input)
put_NtlmAuth( b )
Setting this property to true causes the HTTP component to use NTLM authentication (also known as IWA -- or Integrated Windows Authentication) when authentication with an HTTP server. The default value is false.
// Returns an integer value
get_NumCacheLevels( )
// v is an integer (input)
put_NumCacheLevels( v )
The number of directory levels to be used under each cache root. The default is 0, meaning that each cached HTML page is stored in a cache root directory. A value of 1 causes each cached page to be stored in one of 255 subdirectories named "0","1", "2", ..."255" under a cache root. A value of 2 causes two levels of subdirectories ("0..255/0..255") under each cache root. The HTTP control automatically creates subdirectories as needed. The reason for mutliple levels is to alleviate problems that may arise with unrelated software when huge numbers of files are stored in a single directory. For example, Windows Explorer does not behave well when trying to display the contents of directories with thousands of files.
// Returns an integer value
get_NumCacheRoots( )
The number of cache roots to be used for the HTTP cache. This allows the disk cache spread out over multiple disk drives. Each cache root is a string indicating the drive letter and directory path. For example, "E:\Cache". An example of a very large low-cost cache might be four USB external drives. To create a cache with four roots, call AddCacheRoot once for each directory root.
// str is a CkString object (output)
get_Password( str )
// v is a string (input)
put_Password( v )
The HTTP password for pages requiring a login/password. Chilkat HTTP can do both Basic and NTLM HTTP authentication. (NTLM is also known as SPA (or Windows Integrated Authentication). To use NTLM, set the NtlmAuth property = true.
// str is a CkString object (output)
get_ProxyAuthMethod( str )
// newVal is a string (input)
put_ProxyAuthMethod( newVal )
Set this to "basic" if you know in advance that Basic authentication is to be used for the HTTP proxy. Otherwise leave this property unset. Note: It is not necessary to set this property. The HTTP component will automatically handle proxy authentication for any of the supported authentication methods: NTLM, Digest, or Basic. Setting this property equal to "basic" prevents the 407 response which is automatically handled internal to Chilkat and never seen by your application.
// str is a CkString object (output)
get_ProxyDomain( str )
// v is a string (input)
put_ProxyDomain( v )
The domain name of a proxy host if an HTTP proxy is used.
// str is a CkString object (output)
get_ProxyLogin( str )
// newVal is a string (input)
put_ProxyLogin( newVal )
If an HTTP proxy is used and it requires authentication, this property specifies the HTTP proxy login.
// Returns a boolean value
get_ProxyPartialUrl( )
// newVal is a boolean (input)
put_ProxyPartialUrl( newVal )
The default value is false. If false, then the full URL is passed on the start line for HTTP requests (GET, POST, PUT, etc.) using a proxy. If true, then only the path is passed on the start line.
// str is a CkString object (output)
get_ProxyPassword( str )
// newVal is a string (input)
put_ProxyPassword( newVal )
If an HTTP proxy is used and it requires authentication, this property specifies the HTTP proxy password.
// Returns an integer value
get_ProxyPort( )
// n is an integer (input)
put_ProxyPort( n )
The port number of a proxy server if an HTTP proxy is used.
// Returns an integer value
get_ReadTimeout( )
// numSeconds is an integer (input)
put_ReadTimeout( numSeconds )
The amount of time in seconds to wait before timing out when reading from an HTTP server. The ReadTimeout is the amount of time that needs to elapse while no additional data is forthcoming. During a long download, if the data stream halts for more than this amount, it will timeout. Otherwise, there is no limit on the length of time for the entire download.
// str is a CkString object (output)
get_Referer( str )
// v is a string (input)
put_Referer( v )
The Referer header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is the empty string which causes the Referer field to be omitted from the request header.
// str is a CkString object (output)
get_RequiredContentType( str )
// newVal is a string (input)
put_RequiredContentType( newVal )
If set, then any HTTP response to any POST or GET, including downloads, will be rejected if the content-type in the response header does not match this setting. If the content-type does not match, only the header of the HTTP response is read, the connection to the HTTP server is closed, and the remainder of the response is never read.
This property is empty (zero-length string) by default.
Some typical content-types are "text/html", "text/xml", "image/gif", "image/jpeg", "application/zip", "application/msword", "application/pdf", etc.
// Returns a boolean value
get_SaveCookies( )
// b is a boolean (input)
put_SaveCookies( b )
If this property is true, cookies are automatically persisted to XML files in the directory specified by the CookiesDir property (or in memory if CookieDir = "memory"). Both CookiesDir and SaveCookies must be set for cookies to be persisted.
// Returns an integer value
get_SendBufferSize( )
// newVal is an integer (input)
put_SendBufferSize( newVal )
The buffer size to be used with the underlying TCP/IP socket for sending. The default value is 65535.
// Returns a boolean value
get_SendCookies( )
// b is a boolean (input)
put_SendCookies( b )
If true, then cookies previously persisted to the CookiesDir are automatically added to all HTTP requests. Only cookies matching the domain and path are added.
// str is a CkString object (output)
get_SessionLogFilename( str )
// newVal is a string (input)
put_SessionLogFilename( newVal )
Enables file-based session logging. If set to a filename (or relative/absolute filepath), then the exact HTTP requests and responses are logged to a file. The file is created if it does not already exist, otherwise it is appended.
// str is a CkString object (output)
get_SocksHostname( str )
// newVal is a string (input)
put_SocksHostname( newVal )
The SOCKS4/SOCKS5 hostname or IPv4 address (in dotted decimal notation). This property is only used if the SocksVersion property is set to 4 or 5).
// str is a CkString object (output)
get_SocksPassword( str )
// newVal is a string (input)
put_SocksPassword( newVal )
The SOCKS5 password (if required). The SOCKS4 protocol does not include the use of a password, so this does not apply to SOCKS4.
// Returns an integer value
get_SocksPort( )
// newVal is an integer (input)
put_SocksPort( newVal )
The SOCKS4/SOCKS5 proxy port. The default value is 1080. This property only applies if a SOCKS proxy is used (if the SocksVersion property is set to 4 or 5).
// str is a CkString object (output)
get_SocksUsername( str )
// newVal is a string (input)
put_SocksUsername( newVal )
The SOCKS4/SOCKS5 proxy username. This property is only used if the SocksVersion property is set to 4 or 5).
// Returns an integer value
get_SocksVersion( )
// newVal is an integer (input)
put_SocksVersion( newVal )
SocksVersion May be set to one of the following integer values:
0 - No SOCKS proxy is used. This is the default.
4 - Connect via a SOCKS4 proxy.
5 - Connect via a SOCKS5 proxy.
// str is a CkString object (output)
get_SslProtocol( str )
// newVal is a string (input)
put_SslProtocol( newVal )
Selects the secure protocol to be used for secure (SSL) connections. Possible values are:
defaultThe default value is "default", which allows for the protocol to be selected dynamically at runtime based on the requirements of the server.
TLS 1.0
SSL 3.0
SSL 2.0
PCT 1.0
// Returns a boolean value
get_UpdateCache( )
// b is a boolean (input)
put_UpdateCache( b )
Controls whether the cache is automatically updated with the responses from HTTP GET requests.
// Returns a boolean value
get_UseBgThread( )
// newVal is a boolean (input)
put_UseBgThread( newVal )
If true, then background-enabled methods will run in a background thread. Normally, a method will return after its work is completed. However, when UseBgThread is true, the method will return immediately and a background thread is started to carry out the method’s task.
Background-enabled HTTP methods are:
- Download
- DownloadAppend
- GetHead
- PostBinary
- PostMime
- PostUrlEncoded
- PostXml
- PutText
- QuickDeleteStr
- QuickGet
- QuickGetObj
- QuickGetStr
- QuickPutStr
- ResumeDownload
- SynchronousRequest
- XmlRpc
- XmlRpcPut
More information on background enabling HTTP communications.
// Returns a boolean value
get_UseIEProxy( )
// b is a boolean (input)
put_UseIEProxy( b )
If true, the proxy host/port used by Internet Explorer will also be used by Chilkat HTTP.
// str is a CkString object (output)
get_UserAgent( str )
// v is a string (input)
put_UserAgent( v )
The UserAgent header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is "Chilkat/1.0.0 (+http://www.chilkatsoft.com/ChilkatHttpUA.asp)" which indicates that the software used to issue the HTTP request was the Chilkat HTTP component.
// Returns a boolean value
get_VerboseLogging( )
// newVal is a boolean (input)
put_VerboseLogging( newVal )
If true, increases the amount of information available in LastErrorText (or LastErrorXml / LastErrorHtml). The default is false.
// str is a CkString object (output)
get_Version( str )
Returns a string such as "1.0.0" indicating the version of the HTTP component.
// Returns a boolean value
get_WasRedirected( )
Indicates whether the last HTTP GET was redirected.
Methods
// dir is a string (input)
AddCacheRoot( dir )
This method must be called at least once if disk caching is to be used. The file path (including drive letter) such as "E:\MyHttpCache\" is passed to AddCacheRoot to specify the root directory. The cache can be spread across multiple disk drives by calling AddCacheRoot multiple times, each with a directory path on a separate disk drive.
// Returns a CkHttpResponse object
BgResponseObject( )
If a backgrounded method returns an Http response object, it may be retrieved by calling this method.
Call this to force the currently running backgrounded method to abort.
Clears the in-memory event log (which is enabled by setting the KeepEventLog property = true).
Clears all cookies cached in memory. Calling this only makes sense if the CookieDir property is set to the string "memory".
// url is a string (input)
// filename is a string (input)
// Returns a boolean value
Download( url, filename )
HTTP downloads a file at a URL. The file can be any size and any type. Large files are downloaded in streaming mode such that the memory footprint is small and steady. HTTPS is fully supported, as it is with all the methods of this class.
Returns true for success, false for failure.
// url is a string (input)
// filename is a string (input)
// Returns a boolean value
DownloadAppend( url, filename )
Same as the Download method, but the output file is open for append.
Returns true for success, false for failure.
// index is an integer (input)
// outStr is a CkString object (output)
// Returns a boolean value
EventLogName( index, outStr )
Returns the name of the Nth event in the in-memory event log. Refer to the documentation for the KeepEventLog property for the full list of event names. Indexing is from 0 to EventLogCount-1.
Returns true for success, false for failure.
// index is an integer (input)
// outStr is a CkString object (output)
// Returns a boolean value
EventLogValue( index, outStr )
Returns the value of the Nth event in the in-memory event log. Indexing is from 0 to EventLogCount-1.
Returns true for success, false for failure.
// outStr is a CkString object (output)
GenTimeStamp( outStr )
Returns the current GMT (also known as UTC) date/time in a string that is compliant with RFC 2616 format.
Returns true for success, false for failure.
// index is an integer (input)
// str is a CkString object (output)
// Returns a boolean value
GetCacheRoot( index, str )
Returns the Nth cache root (indexing begins at 0). Cache roots are set by calling AddCacheRoot one or more times.
Returns true for success, false for failure.
// domain is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
GetCookieXml( domain, outStr )
Returns the cookies in XML format for a specific domain. Cookies are only persisted if the SaveCookies property is set to true. If the CookieDir property is set to the keyword "memory", then cookies are saved in-memory.
Returns true for success, false for failure.
// url is a string (input)
// str is a CkString object (output)
GetDomain( url, str )
Utility method for extracting the domain name from a full URL. For example, if "http://www.chilkatsoft.com/default.asp" is the URL passed in, then "www.chilkatsoft.com" is returned.
Returns true for success, false for failure.
// url is a string (input)
// Returns a CkHttpResponse object
GetHead( url )
Sends an HTTP HEAD request for a URL and returns a response object.
// name is a string (input)
// str is a CkString object (output)
// Returns a boolean value
GetRequestHeader( name, str )
Returns the value of a header field that has been pre-defined to be sent with all HTTP GET requests issued by the QuickGet and QuickGetStr methods. By default, this includes header fields such as Accept, AcceptCharset, AcceptLanguage, Connection, UserAgent, etc.
Returns true for success, false for failure.
// domain is a string (input)
// port is an integer (input)
// Returns a CkCert object
GetServerSslCert( domain, port )
Establishes an SSL/TLS connection with a web server for the purpose of retrieving the server's SSL certificate (public-key only of course...). Nothing is retrieved from the web server. This method simply makes a connection, gets the certificate information, and closes the connection.
// url is a string (input)
// str is a CkString object (output)
GetUrlPath( url, str )
Returns the path part of a URL. The syntax of a URL is
:// : @ : / ; ? # . This method returns the "path" part. Returns true for success, false for failure.
// name is a string (input)
// Returns a boolean value
HasRequestHeader( name )
Returns true if the specified header field is defined such that it will be sent with all GET requests issued by the QuickGet and QuickGetStr methods.
// Returns a boolean value
IsUnlocked( )
Returns true if the Http class has been unlocked. It is necessary to call Http.UnlockComponent before calling any other methods. Passing any string to UnlockComponent will automatically activate a 30-day trial period.
// url is a string (input)
// byteData is a CkByteData object (output)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// outStr is a CkString object (output)
// Returns a boolean value
PostBinary( url, byteData, contentType, md5, gzip, outStr )
To be documented soon...
// url is a string (input)
// mime is a string (input)
// Returns a CkHttpResponse object
PostMime( url, mime )
Allows the calling application to specify the exact content to be sent in a POST. The HTTP POST is sent and the response is returned as an HTTP response object.
// url is a string (input)
// Returns a CkHttpResponse object
PostUrlEncoded( url, req )
Sends a simple URL encoded POST. The form parameters are sent in the body of the HTTP request in x-www-form-urlencoded format. The content-type is "application/x-www-form-urlencoded".
// endpointUrl is a string (input)
// xmlContent is a string (input)
// xmlCharset is a string (input)
// Returns a CkHttpResponse object
PostXml( endpointUrl, xmlContent, xmlCharset )
A simplified way of posting XML content to a web server. This method is good for making SOAP calls using HTTP POST. The xmlCharset should match the character encoding used in the xmlContent, which is typically "utf-8". The HTTP response is returned in an HTTP response object.
// url is a string (input)
// byteData is a CkByteData object (output)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// outStr is a CkString object (output)
// Returns a boolean value
PutBinary( url, byteData, contentType, md5, gzip, outStr )
Sends an HTTP PUT request to the url. The body of the HTTP request is byteData. The contentType is a content type such as "image/gif", "application/pdf", etc. If md5 is true, then a Content-MD5 header is added with the base64 MD5 hash of the byteData. Servers aware of the Content-MD5 header will perform a message integrity check to ensure that the data has not been corrupted. If gzip is true, the byteData is compressed using the gzip algorithm. The HTTP request body will contain the GZIP compressed data, and a "Content-Encoding: gzip" header is automatically added to indicate that the request data needs to be ungzipped when received (at the server).
Returns true for success, false for failure.
// url is a string (input)
// textData is a string (input)
// charset is a string (input)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// outStr is a CkString object (output)
// Returns a boolean value
PutText( url, textData, charset, contentType, md5, gzip, outStr )
Sends an HTTP PUT request to the url. The body of the HTTP request is textData. The charset should be set to a charset name such as "iso-8859-1", "windows-1252", "Shift_JIS", "utf-8", etc. The string "ansi" may also be used as a charset name. The contentType is a content type such as "text/plain", "text/xml", etc. If md5 is true, then a Content-MD5 header is added with the base64 MD5 hash of the textData. Servers aware of the Content-MD5 header will perform a message integrity check to ensure that the data has not been corrupted. If gzip is true, the textData is compressed using the gzip algorithm. The HTTP request body will contain the GZIP compressed data, and a "Content-Encoding: gzip" header is automatically added to indicate that the request data needs to be ungzipped when received (at the server).
Returns true for success, false for failure.
// url is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
QuickDeleteStr( url, outStr )
Same as QuickGetStr, but uses the HTTP DELETE method instead of the GET method.
Returns true for success, false for failure.
// url is a string (input)
// data is a CkByteData object (output)
// Returns a boolean value
QuickGet( url, data )
Sends an HTTP GET request for a URL and returns the response body as a byte array. The URL may contain query parameters. If the SendCookies property is true, matching cookies previously persisted to the CookiesDir are automatically included in the request. If the FetchFromCache property is true, the page may be fetched directly from cache. Because the URL can specify any type of resource (HTML page, GIF image, etc.) the return value is a byte array. If the resource is known to be a string, such as with an HTML page, you may call QuickGetStr instead. If the HTTP request fails, a zero-length byte array is returned and error information can be found in the LastErrorText, LastErrorXml, or LastErrorHtml properties.
// url is a string (input)
// Returns a CkHttpResponse object
QuickGetObj( url )
To be documented soon.
// url is a string (input)
// str is a CkString object (output)
// Returns a boolean value
QuickGetStr( url, str )
Sends an HTTP GET request for a URL and returns the response body as a string. The URL may contain query parameters. If the SendCookies property is true, matching cookies previously persisted to the CookiesDir are automatically included in the request. If the FetchFromCache property is true, the page could be fetched directly from cache. If the HTTP request fails, a NULL value is returned and error information can be found in the LastErrorText, LastErrorXml, or LastErrorHtml properties.
Returns true for success, false for failure.
// url is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
QuickPutStr( url, outStr )
Same as QuickGetStr, but uses the HTTP PUT method instead of the GET method.
Returns true for success, false for failure.
// name is a string (input)
RemoveRequestHeader( name )
Eliminates a header field from being included in HTTP GET requests issued by the QuickGet and QuickGetStr methods.
// url is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
RenderGet( url, outStr )
Same as QuickGet, but does not send the HTTP GET. Instead, it builds the HTTP request that would've been sent and returns it.
Returns true for success, false for failure.
// url is a string (input)
// targetFilename is a string (input)
// Returns a boolean value
ResumeDownload( url, targetFilename )
Same as the Download method, except a failed download may be resumed. The targetFilename is automatically checked and if it exists, the download will resume at the point where it previously failed. ResumeDownload may be called any number of times until the full download is complete.
Returns true for success, false for failure.
// filename is a string (input)
// Returns a boolean value
SaveLastError( filename )
Saves the last error information to an XML formatted file.
// domain is a string (input)
// cookieXml is a string (input)
// Returns a boolean value
SetCookieXml( domain, cookieXml )
Restores cookies for a particular domain. It is assumed that the cookie XML was previously retrieved via the GetCookieXml method, and saved to some sort of persistent storage, such as within a database table. It is then possible for an application to restore the cookies by calling this method.
Returns true for success, false for failure.
// name is a string (input)
// value is a string (input)
SetRequestHeader( name, value )
Adds or replaces a custom HTTP request header to be sent with all GET requests issued by the QuickGet and QuickGetStr methods.
Allows for a client-side certificate to be used for an SSL connection.
// pfxFilename is a string (input)
// pfxPassword is a string (input)
// certSubjectCN is a string (input)
// Returns a boolean value
SetSslClientCertPfx( pfxFilename, pfxPassword, certSubjectCN )
To be documented soon...
// millisec is an integer (input)
SleepMs( millisec )
To be documented soon...
// domain is a string (input)
// port is an integer (input)
// ssl is a boolean (input)
// req is a CkHttpRequest object (input)
// Returns a CkHttpResponse object
SynchronousRequest( domain, port, ssl, req )
Sends an explicit HttpRequest to an HTTP server and returns an HttpResponse object. The HttpResponse object provides full access to the response including all headers and the response body. This method may be used to send POST requests, as well as GET, HEAD, file uploads, and XMLHTTP.
// unlockCode is a string (input)
// Returns a boolean value
UnlockComponent( unlockCode )
Unlocks the Http class/component. It is necessary to call Http.UnlockComponent before calling any other methods. Passing any string to UnlockComponent will automatically activate a 30-day trial period.
Returns true for success, false for failure.
// str is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
UrlDecode( str, outStr )
URL decodes a string.
Returns true for success, false for failure.
// str is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
UrlEncode( str, outStr )
URL encodes a string.
Returns true for success, false for failure.
// urlEndpoint is a string (input)
// xmlIn is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
XmlRpc( urlEndpoint, xmlIn, outStr )
Makes an XML RPC call to a URL endpoint. The XML string is passed in an HTTP POST, and the XML response is returned.
Returns true for success, false for failure.
// urlEndpoint is a string (input)
// xmlIn is a string (input)
// outStr is a CkString object (output)
// Returns a boolean value
XmlRpcPut( urlEndpoint, xmlIn, outStr )
Same as XmlRpc, but uses the HTTP PUT method instead of the POST method.
Returns true for success, false for failure.
// Returns a string
acceptCharset( )
The AcceptCharset header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is "ISO-8859-1,utf-8;q=0.7,*;q=0.7".
// Returns a string
acceptLanguage( )
The AcceptLanguage header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is "en-us,en;q=0.5".
// Returns a string
bgLastErrorText( )
When a background-enabled method is run asynchronously in a background thread, the last-error information is saved here and not in the LastErrorText property. If the background method fails, this will contain information about what transpired. (This property also contains information when the background method succeeds.)
More information on background enabling HTTP communications.
// Returns a string
bgResultString( )
If a backgrounded method returns a string, the return value is found here.
// Returns a string
ck_accept( )
To be documented soon...
// Returns a string
clientIpAddress( )
To be documented soon...
// Returns a string
connection( )
The Connection header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is "Keep-Alive". To prevent the Connection header from being added to the HTTP header, set this property to the empty string.
// Returns a string
cookieDir( )
Specifies a directory where cookies are automatically persisted if the Http.SaveCookies property is turned on. Cookies are stored in XML formatted files, one per domain, to main it easy for other programs to understand and parse. May be set to the string "memory" to cache cookies in memory.
// index is an integer (input)
// Returns a string
eventLogName( index )
Returns the name of the Nth event in the in-memory event log. Refer to the documentation for the KeepEventLog property for the full list of event names. Indexing is from 0 to EventLogCount-1.
// index is an integer (input)
// Returns a string
eventLogValue( index )
Returns the value of the Nth event in the in-memory event log. Indexing is from 0 to EventLogCount-1.
// Returns a string
finalRedirectUrl( )
If an HTTP GET was redirected (as indicated by the WasRedirected property), this property will contain the final redirect URL, assuming the FollowRedirects property is true.
// Returns a string
genTimeStamp( )
Returns the current GMT (also known as UTC) date/time in a string that is compliant with RFC 2616 format.
// index is an integer (input)
// Returns a string
getCacheRoot( index )
Returns the Nth cache root (indexing begins at 0). Cache roots are set by calling AddCacheRoot one or more times.
// domain is a string (input)
// Returns a string
getCookieXml( domain )
Returns the cookies in XML format for a specific domain. Cookies are only persisted if the SaveCookies property is set to true. If the CookieDir property is set to the keyword "memory", then cookies are saved in-memory.
// url is a string (input)
// Returns a string
getDomain( url )
Utility method for extracting the domain name from a full URL. For example, if "http://www.chilkatsoft.com/default.asp" is the URL passed in, then "www.chilkatsoft.com" is returned.
// name is a string (input)
// Returns a string
getRequestHeader( name )
Returns the value of a header field that has been pre-defined to be sent with all HTTP GET requests issued by the QuickGet and QuickGetStr methods. By default, this includes header fields such as Accept, AcceptCharset, AcceptLanguage, Connection, UserAgent, etc.
// url is a string (input)
// Returns a string
getUrlPath( url )
Returns the path part of a URL. The syntax of a URL is
:// : @ : / ; ? # . This method returns the "path" part.
// Returns a string
lastContentType( )
The content-type of the last HTTP response received by the HTTP component.
// Returns a string
lastErrorHtml( )
Error information in HTML format for the last method called.
// Returns a string
lastErrorText( )
Error information in plain-text format for the last method called.
// Returns a string
lastErrorXml( )
Error information in XML format for the last method called.
// Returns a string
lastHeader( )
The text of the last HTTP header sent by any of this class's methods. The purpose of this property is to allow the developer to examine the exact HTTP header for debugging purposes.
// Returns a string
lastModDate( )
The value of the Last-Modified header in the last HTTP response received by the HTTP component.
// Returns a string
lastResponseHeader( )
The entire last response header for the last HTTP response received by the HTTP component.
The HTTP login for pages requiring a login/password. Chilkat HTTP can do both Basic and NTLM HTTP authentication. (NTLM is also known as SPA (or Windows Integrated Authentication). To use NTLM, set the NtlmAuth property = true.
// Returns a string
loginDomain( )
The optional domain name to be used with NTLM / Kerberos / Negotiate authentication.
// Returns a string
password( )
The HTTP password for pages requiring a login/password. Chilkat HTTP can do both Basic and NTLM HTTP authentication. (NTLM is also known as SPA (or Windows Integrated Authentication). To use NTLM, set the NtlmAuth property = true.
// url is a string (input)
// byteData is a CkByteData object (output)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// Returns a string
postBinary( url, byteData, contentType, md5, gzip )
To be documented soon...
// Returns a string
proxyAuthMethod( )
Set this to "basic" if you know in advance that Basic authentication is to be used for the HTTP proxy. Otherwise leave this property unset. Note: It is not necessary to set this property. The HTTP component will automatically handle proxy authentication for any of the supported authentication methods: NTLM, Digest, or Basic. Setting this property equal to "basic" prevents the 407 response which is automatically handled internal to Chilkat and never seen by your application.
// Returns a string
proxyDomain( )
The domain name of a proxy host if an HTTP proxy is used.
// Returns a string
proxyLogin( )
If an HTTP proxy is used and it requires authentication, this property specifies the HTTP proxy login.
// Returns a string
proxyPassword( )
If an HTTP proxy is used and it requires authentication, this property specifies the HTTP proxy password.
// url is a string (input)
// byteData is a CkByteData object (output)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// Returns a string
putBinary( url, byteData, contentType, md5, gzip )
Sends an HTTP PUT request to the url. The body of the HTTP request is byteData. The contentType is a content type such as "image/gif", "application/pdf", etc. If md5 is true, then a Content-MD5 header is added with the base64 MD5 hash of the byteData. Servers aware of the Content-MD5 header will perform a message integrity check to ensure that the data has not been corrupted. If gzip is true, the byteData is compressed using the gzip algorithm. The HTTP request body will contain the GZIP compressed data, and a "Content-Encoding: gzip" header is automatically added to indicate that the request data needs to be ungzipped when received (at the server).
// url is a string (input)
// textData is a string (input)
// charset is a string (input)
// contentType is a string (input)
// md5 is a boolean (input)
// gzip is a boolean (input)
// Returns a string
putText( url, textData, charset, contentType, md5, gzip )
Sends an HTTP PUT request to the url. The body of the HTTP request is textData. The charset should be set to a charset name such as "iso-8859-1", "windows-1252", "Shift_JIS", "utf-8", etc. The string "ansi" may also be used as a charset name. The contentType is a content type such as "text/plain", "text/xml", etc. If md5 is true, then a Content-MD5 header is added with the base64 MD5 hash of the textData. Servers aware of the Content-MD5 header will perform a message integrity check to ensure that the data has not been corrupted. If gzip is true, the textData is compressed using the gzip algorithm. The HTTP request body will contain the GZIP compressed data, and a "Content-Encoding: gzip" header is automatically added to indicate that the request data needs to be ungzipped when received (at the server).
// url is a string (input)
// Returns a string
quickDeleteStr( url )
Same as QuickGetStr, but uses the HTTP DELETE method instead of the GET method.
// url is a string (input)
// Returns a string
quickGetStr( url )
Sends an HTTP GET request for a URL and returns the response body as a string. The URL may contain query parameters. If the SendCookies property is true, matching cookies previously persisted to the CookiesDir are automatically included in the request. If the FetchFromCache property is true, the page could be fetched directly from cache. If the HTTP request fails, a NULL value is returned and error information can be found in the LastErrorText, LastErrorXml, or LastErrorHtml properties.
// url is a string (input)
// Returns a string
quickPutStr( url )
Same as QuickGetStr, but uses the HTTP PUT method instead of the GET method.
The Referer header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is the empty string which causes the Referer field to be omitted from the request header.
// url is a string (input)
// Returns a string
renderGet( url )
Same as QuickGet, but does not send the HTTP GET. Instead, it builds the HTTP request that would've been sent and returns it.
// Returns a string
requiredContentType( )
If set, then any HTTP response to any POST or GET, including downloads, will be rejected if the content-type in the response header does not match this setting. If the content-type does not match, only the header of the HTTP response is read, the connection to the HTTP server is closed, and the remainder of the response is never read.
This property is empty (zero-length string) by default.
Some typical content-types are "text/html", "text/xml", "image/gif", "image/jpeg", "application/zip", "application/msword", "application/pdf", etc.
// Returns a string
sessionLogFilename( )
Enables file-based session logging. If set to a filename (or relative/absolute filepath), then the exact HTTP requests and responses are logged to a file. The file is created if it does not already exist, otherwise it is appended.
// Returns a string
socksHostname( )
The SOCKS4/SOCKS5 hostname or IPv4 address (in dotted decimal notation). This property is only used if the SocksVersion property is set to 4 or 5).
// Returns a string
socksPassword( )
The SOCKS5 password (if required). The SOCKS4 protocol does not include the use of a password, so this does not apply to SOCKS4.
// Returns a string
socksUsername( )
The SOCKS4/SOCKS5 proxy username. This property is only used if the SocksVersion property is set to 4 or 5).
// Returns a string
sslProtocol( )
Selects the secure protocol to be used for secure (SSL) connections. Possible values are:
defaultThe default value is "default", which allows for the protocol to be selected dynamically at runtime based on the requirements of the server.
TLS 1.0
SSL 3.0
SSL 2.0
PCT 1.0
// str is a string (input)
// Returns a string
urlDecode( str )
URL decodes a string.
// str is a string (input)
// Returns a string
urlEncode( str )
URL encodes a string.
// Returns a string
userAgent( )
The UserAgent header field to be automatically included with GET requests issued by QuickGet or QuickGetStr. The default value is "Chilkat/1.0.0 (+http://www.chilkatsoft.com/ChilkatHttpUA.asp)" which indicates that the software used to issue the HTTP request was the Chilkat HTTP component.
Returns a string such as "1.0.0" indicating the version of the HTTP component.
// urlEndpoint is a string (input)
// xmlIn is a string (input)
// Returns a string
xmlRpc( urlEndpoint, xmlIn )
Makes an XML RPC call to a URL endpoint. The XML string is passed in an HTTP POST, and the XML response is returned.
// urlEndpoint is a string (input)
// xmlIn is a string (input)
// Returns a string
xmlRpcPut( urlEndpoint, xmlIn )
Same as XmlRpc, but uses the HTTP PUT method instead of the POST method.