ASP Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

ASP Examples

ASP String
ASP Byte Array
Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH
SSH Tunnel
SSH Key
SFTP
Tar
ASP Upload
XML
XMP
Zip Compression

More Examples...
Amazon S3
Email Object
DKIM / DomainKey
NTLM
DH Key Exchange
DSA
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
LZW

 

 

 

 

 

 

(ASP) HTTP in a Background Thread (Asynchronous HTTP)

This example shows the technique one would follow to run any Chilkat HTTP method in a background task. (Only HTTP methods that communicate with an HTTP server are background-enabled. Methods that perform no HTTP communications return immediately and never need to be backgrounded.)

Download Chilkat HTTP ActiveX

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
set http = Server.CreateObject("Chilkat.Http")

'  Any string unlocks the component for the 1st 30-days.
success = http.UnlockComponent("Anything for 30-day trial")
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode(http.LastErrorText) & "</pre>"

End If

'  To run an HTTP method asynchronously in a background thread, set
'  the UseBgThread property equal to 1
http.UseBgThread = 1

'  For those programming languages that support event callbacks:
'  events are not fired when a task is running in the background thread.
'  Instead, Chilkat has added the "event log" mechanism.  While the
'  background task is running, events that normally would've been fired
'  are accumulated in the event log.  Your application may periodically check
'  the event log to keep track of the progress of the background task.
'  To enable event logging, set the KeepEventLog property = 1
http.KeepEventLog = 1

'  Start an asynchronous HTTP download in a background thread.
'  The method will return cktrue if the task was successfully started.
'  Note: When the UseBgThread property = 1, all methods involving
'  HTTP communications will be asynchronous.  These methods include:
'  SynchronousRequest, QuickGetStr, QuickGet, PostUrlEncoded, XmlRpc,
'  XmlRpcPut, QuickPutStr, QuickGetObj, QuickDeleteStr, PutText,
'  PutBinary, PostBinary, PostMime, GetHead, DownloadAppend, etc.
success = http.Download("http://www.chilkatsoft.com/download/ChilkatJava.zip","ChilkatJava.zip")
If (success <> 1) Then
    Response.Write "<pre>" & Server.HTMLEncode( http.LastErrorText) & "</pre>"

Else
    Response.Write "<pre>" & Server.HTMLEncode( "Initiated asynchronous HTTP download...") & "</pre>"
End If

'  Write a loop to wait for the background task to complete.
'  Your application would typically do something different than this --
'  after all... there's no point in doing the task asynchronously if your application
'  is simply going to wait for it to complete -- that's the same as doing it synchronously,
'  and that could've been achieved by a single call to the http.Download method
'  with the UseBgThread = 0.
'  However... we do this here for the purpose of demonstration...
Do While (http.BgTaskRunning = 1)
    '  Show the events in the event log that have accumulated so far...
    n = http.EventLogCount
    If (n > 0) Then

        For i = 0 To n - 1
            Response.Write "<pre>" & Server.HTMLEncode( http.EventLogName(i) _
                 & ": " & http.EventLogValue(i)) & "</pre>"
        Next
        http.ClearBgEventLog 
    End If

    '  In some programming languages, you might wish to handle user-interface events
    '  For example, in C#  you might call Application.DoEvents()

    '  Sleep .1 seconds -- to keep the CPU from being 100% busy...
    http.SleepMs 100
Loop

'  Once the background task has completed, check it for success/failure:
If (http.BgTaskSuccess) Then
    Response.Write "<pre>" & Server.HTMLEncode( "Background task completed successfully.") & "</pre>"
End If


%>
</body>
</html>

 

© 2000-2012 Chilkat Software, Inc. All Rights Reserved.