Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) Twitter Simple Tweet (Post Status Update)Demonstrates sending a simple Twitter status update (tweet).
#include <CkJsonObject.h> #include <CkRest.h> #include <CkOAuth1.h> void ChilkatSample(void) { CkString strOut; // It requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // ---------------------------------------------------------------------- // This initial setup, which involves setting the OAuth1 properties and connecting // to api.twitter.com, is only required once at the beginning. Once connected, the same // object instance may be re-used, and if necessary, it will automatically reconnect // as needed. // Assume we've previously obtained an access token and saved it to a JSON file.. CkJsonObject json; bool success = json.LoadFile("qa_data/tokens/twitter.json"); CkRest rest; CkOAuth1 oauth1; oauth1.put_ConsumerKey("TWITTER_CONSUMER_KEY"); oauth1.put_ConsumerSecret("TWITTER_CONSUMER_SECRET"); oauth1.put_Token(json.stringOf("oauth_token")); oauth1.put_TokenSecret(json.stringOf("oauth_token_secret")); oauth1.put_SignatureMethod("HMAC-SHA1"); oauth1.GenNonce(16); rest.SetAuthOAuth1(oauth1,false); bool bAutoReconnect = true; success = rest.Connect("api.twitter.com",443,true,bAutoReconnect); if (success != true) { strOut.append(rest.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // This ends the initial setup... // ---------------------------------------------------------------------- const char *tweetContent = "This is a test tweet."; // Send a tweet... rest.ClearAllQueryParams(); rest.AddQueryParam("status",tweetContent); const char *resp = rest.fullRequestFormUrlEncoded("POST","/1.1/statuses/update.json"); if (rest.get_LastMethodSuccess() != true) { strOut.append(rest.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } CkJsonObject jsonResponse; jsonResponse.put_EmitCompact(false); jsonResponse.Load(resp); if (rest.get_ResponseStatusCode() != 200) { strOut.append(jsonResponse.emit()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // Show the successful response: strOut.append(jsonResponse.emit()); strOut.append("\r\n"); strOut.append("Success."); strOut.append("\r\n"); // A successful JSON response looks like this: // { // "created_at": "Tue Oct 18 01:58:44 +0000 2016", // "id": 788111589581114111, // "id_str": "788111189585711352", // "text": "This is a test tweet.", // "truncated": false, // "entities": { // "hashtags": [ // ], // "symbols": [ // ], // "user_mentions": [ // ], // "urls": [ // ] // }, // "source": "\u003ca href=\"https:\/\/www.chilkatsoft.com\/\" rel=\"nofollow\"\u003eChilkatTestApp\u003c\/a\u003e", // "in_reply_to_status_id": null, // "in_reply_to_status_id_str": null, // "in_reply_to_user_id": null, // "in_reply_to_user_id_str": null, // "in_reply_to_screen_name": null, // "user": { // "id": 85647455, // "id_str": "85647455", // "name": "Chilkat Software", // "screen_name": "chilkatsoft", // "location": "", // "description": "", // "url": "https:\/\/t.co\/hSTR4sOuis", // "entities": { // "url": { // "urls": [ // { // "url": "https:\/\/t.co\/hSTR4sOuis", // "expanded_url": "http:\/\/www.chilkatsoft.com", // "display_url": "chilkatsoft.com", // "indices": [ // 0, // 23 // ] // } // ] // }, // "description": { // "urls": [ // ] // } // }, // "protected": false, // "followers_count": 36, // "friends_count": 0, // "listed_count": 4, // "created_at": "Tue Oct 27 19:56:13 +0000 2009", // "favourites_count": 0, // "utc_offset": null, // "time_zone": null, // "geo_enabled": false, // "verified": false, // "statuses_count": 6, // "lang": "en", // "contributors_enabled": false, // "is_translator": false, // "is_translation_enabled": false, // "profile_background_color": "C0DEED", // "profile_background_image_url": "http:\/\/abs.twimg.com\/images\/themes\/theme1\/bg.png", // "profile_background_image_url_https": "https:\/\/abs.twimg.com\/images\/themes\/theme1\/bg.png", // "profile_background_tile": false, // "profile_image_url": "http:\/\/pbs.twimg.com\/profile_images\/115893001012741111\/clLweDSg_normal.jpg", // "profile_image_url_https": "https:\/\/pbs.twimg.com\/profile_images\/115893001012741111\/clLweDSg_normal.jpg", // "profile_link_color": "0084B4", // "profile_sidebar_border_color": "C0DEED", // "profile_sidebar_fill_color": "DDEEF6", // "profile_text_color": "333333", // "profile_use_background_image": true, // "has_extended_profile": false, // "default_profile": true, // "default_profile_image": false, // "following": false, // "follow_request_sent": false, // "notifications": false // }, // "geo": null, // "coordinates": null, // "place": null, // "contributors": null, // "is_quote_status": false, // "retweet_count": 0, // "favorite_count": 0, // "favorited": false, // "retweeted": false, // "lang": "en" // } // SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.