Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi ActiveX) Twitter - Tweet with Multiple ImagesExample to post a status update with multiple associated images/photos (or videos).
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var json: TChilkatJsonObject; success: Integer; rest: TChilkatRest; oauth1: TChilkatOAuth1; bAutoReconnect: Integer; tweetContent: WideString; resp: WideString; jsonResponse: TChilkatJsonObject; begin // This example 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.. json := TChilkatJsonObject.Create(Self); success := json.LoadFile('qa_data/tokens/twitter.json'); rest := TChilkatRest.Create(Self); oauth1 := TChilkatOAuth1.Create(Self); oauth1.ConsumerKey := 'TWITTER_CONSUMER_KEY'; oauth1.ConsumerSecret := 'TWITTER_CONSUMER_SECRET'; oauth1.Token := json.StringOf('oauth_token'); oauth1.TokenSecret := json.StringOf('oauth_token_secret'); oauth1.SignatureMethod := 'HMAC-SHA1'; oauth1.GenNonce(16); rest.SetAuthOAuth1(oauth1.ControlInterface,0); bAutoReconnect := 1; success := rest.Connect('api.twitter.com',443,1,bAutoReconnect); if (success <> 1) then begin Memo1.Lines.Add(rest.LastErrorText); Exit; end; // This ends the initial setup... // ---------------------------------------------------------------------- tweetContent := 'This is a test tweet with multiple images.'; // Send a tweet... rest.ClearAllQueryParams(); rest.AddQueryParam('status',tweetContent); // Add list of comma separated media_ids to associate with the Tweet. // You may include up to 4 photos or 1 animated GIF or 1 video in a Tweet. // The image needs to have been previously uploaded. The upload response gave us // the media ID we'll use to associate this tweet with the image (or video) // See Twitter Upload Media for sample code. rest.AddQueryParam('media_ids','793137045996646400,793192201392041984'); resp := rest.FullRequestFormUrlEncoded('POST','/1.1/statuses/update.json'); if (rest.LastMethodSuccess <> 1) then begin Memo1.Lines.Add(rest.LastErrorText); Exit; end; jsonResponse := TChilkatJsonObject.Create(Self); jsonResponse.EmitCompact := 0; jsonResponse.Load(resp); if (rest.ResponseStatusCode <> 200) then begin Memo1.Lines.Add(jsonResponse.Emit()); Exit; end; // Show the successful response: Memo1.Lines.Add(jsonResponse.Emit()); Memo1.Lines.Add('Success.'); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.