Perl
Chilkat2 Perl
IMAP LastResponse and LastResponseCode
Demonstrates the IMAP LastResponse and LastResponseCode properties.Chilkat Perl Downloads
use strict;
use warnings;
use Chilkat2;
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
my $imap = Chilkat2::Imap->new;
# Use TLS
$imap->Ssl(1);
$imap->Port(993);
my $success = $imap->Connect('imap.gmail.com');
if (!$success) {
print $imap->LastErrorText, "\n";
exit;
}
# Authenticate, but with an intentionally incorrect password
# so we can see the contents of the LastErrorText, and also
# the LastResponse and LastResponseCode properties.
$success = $imap->Login('my_login', 'my_intentionally incorrect_password');
if ($success) {
print "Successfull login, but this example is meant to demonstrate an error, such as a failed login.\n";
exit;
}
# Let's look at the LastErrorText, and also the LastResponse and LastResponseCode.
print 'LastResponseCode = ', $imap->LastResponseCode, "\n";
print 'LastReponse = ', $imap->LastResponse, "\n";
print 'LastErrorText = ', $imap->LastErrorText, "\n";
# Sample output:
# LastResponseCode = AUTHENTICATIONFAILED
# LastReponse = aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
# LastErrorText = ChilkatLog:
# Login:
# DllDate: Oct 28 2023
# ChilkatVersion: 9.5.0.96
# UnlockPrefix: EXCODE
# UnlockStatus: 2
# Architecture: Little Endian; 64-bit
# Language: .NET 4.5 / x64 / VS2012
# VerboseLogging: 0
# imapServer: imap.gmail.com
# loginX(47ms):
# login: my_login
# greeting: * OK Gimap ready for requests from 98.213.102.119 w5mb285327441qtc
#
# authenticateLogin(47ms):
# loginImap(47ms):
# ConnectionType: SSL/TLS
# ImapCmdSent: aaab LOGIN "my_login"
# getCompleteResponse(47ms):
# ImapCmdResp: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
# --getCompleteResponse
# --loginImap
# isOK:
# serverResponse: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
# --isOK
# --authenticateLogin
# --loginX
# Failed.
# --Login
# --ChilkatLog
# Disconnect from the IMAP server.
$success = $imap->Disconnect();