|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (Go) GMail SMTP Send using Previously Obtained OAuth2 Access TokenDemonstrates how to send email using GMail and OAuth2 authentication. This example assumes an OAuth2 access token was previously obtained. 
 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // See Get GMail SMTP Access Token // for sample code showing how to obtain a GMail SMTP access token for desktop apps. // In this example, our access token was previously saved to the following file which contains JSON like this: // { // "access_token": "ya39.Ci-XA_C5bGgRDC3UaD-h0_NeL-DVIQnI2gHtBBBHkZzrwlARkwX6R3O0PCDEzRlfaQ", // "token_type": "Bearer", // "expires_in": 3600, // "refresh_token": "1/r_2c_7jddspcdfesrrfKqfXtqo08D6Q-gUU0DsdfVMsx0c" // } // json := chilkat.NewJsonObject() success := json.LoadFile("qa_data/tokens/_gmailSmtp.json") if success != true { fmt.Println("Failed to load GMail access token file.") json.DisposeJsonObject() return } accessToken := json.StringOf("access_token") mailman := chilkat.NewMailMan() // Set the properties for the GMail SMTP server: mailman.SetSmtpHost("smtp.gmail.com") mailman.SetSmtpPort(587) mailman.SetStartTLS(true) // The SMTP username should be the GMail address of the user's account that authorized your app to send email. mailman.SetSmtpUsername("chilkat.support@gmail.com") mailman.SetOAuth2AccessToken(*accessToken) // Create a new email object email := chilkat.NewEmail() email.SetSubject("This is a test") email.SetBody("This is a test") email.SetFrom("Chilkat <chilkat.support@gmail.com>") email.AddTo("Chilkat Admin","admin@chilkatsoft.com") // To add more recipients, call AddTo, AddCC, or AddBcc once per recipient. // Call SendEmail to connect to the SMTP server and send. // The connection (i.e. session) to the SMTP server remains // open so that subsequent SendEmail calls may use the // same connection. success = mailman.SendEmail(email) if success != true { fmt.Println(mailman.LastErrorText()) json.DisposeJsonObject() mailman.DisposeMailMan() email.DisposeEmail() return } // You may close the connection here. If the connection is kept open, // the next call to mailman.SendEmail will continue using the already-established connection // (and automatically re-connect if needed). success = mailman.CloseSmtpConnection() if success != true { fmt.Println("Connection to SMTP server not closed cleanly.") } fmt.Println("Email Sent via GMail with OAuth2 authentication.") json.DisposeJsonObject() mailman.DisposeMailMan() email.DisposeEmail() | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.