2011-01-19 7 views
4

Twitterに投稿するC#でコンソールプログラムを書いてみたいです。以前はTwitter APIを使ったことがなく、認証の仕組みについては何も知らなかった。私はTwitterizerと呼ばれるAPIライブラリを見つけましたが、Webアプリケーションに対応しており、ユーザーがWebブラウザでログオンすることを望んでいます。 TwitterのウェブサイトのすべてのAPIドキュメントは、このシナリオにも対応しているようです。Twitterに投稿するコマンドラインを書く方法C#プログラム

ウェブブラウザにアクセスできないコンソールアプリケーションを使用してTwitter APIにアクセスすることはできますか?私は、私も同様に投稿したいTwitterユーザーの名前とパスワードを完全に細かくコーディングしています。ありがとう!

マイク

+0

可能な重複:http://stackoverflow.com/questions/1259269/whats-the-best-c-twitter-api-for-a-twitter-bot –

答えて

2

Twitterで認証するには、OAuthを使用する必要があります。

通常のHTTPリクエストを使用して、TwitterのJSONベースのAPIを使用します。

Here you can find OAuth、Twitter、およびコンソールアプリケーションに関する良い記事です。

+0

これは、コンソールアプリケーションがウェブをポップアップすることを意味しますユーザーがログオンするためのブラウザ?私もこれをすることはできません。 –

+0

@Mikeいいえ、それはそれが意味するものではありません。 –

+1

記事には次のコードがあります。var authorizationUrl = String.Format(AuthorizeUrl、collection [0]); Process.Start(authorizationUrl); Webブラウザを起動します。 –

0

もちろんRESTful API経由でTwitterに接続するのに何かを使うことができます。
oauthを使用してhttp://dev.twitter.comにアプリケーションを設定しておくと、ドキュメントに記載されているすべての記事を読む必要があります。クライアントはブラウザではなくクライアントとして指定する必要があります。私はパラメータを知っているあなたはあなたの時間を節約することができるように

あなたは多くのライブラリを使用することができ、すべてを文書

と気をつけて、あなたはバグがあるTwitterの自身のAPIコンソールを使用しないでくださいにリストされている(ようsomtimesすることはできませんあなたは強力で安定したAPIgeeを使うべきです。あなたが与えられたユーザー名を使用する必要があり

  1. と:あなただけのただ1つのC#のアプリが必要な場合は、基本認証を使用したい場合は、APIプロキシを使用する必要があります

    、(有名なのは、TWIPである)、自分でコーディングする必要がありますパスワードをログインするtwitterにパスワードを渡して
  2. 通常のoauthを使用して、一時アクセストークンURLを取得します。
  3. 手順1で取得したクッキーを使用して、アプリケーションを許可するフォーム送信をエミュレートして、PINコードをキャプチャします。
  4. oauthを終了するためにピンコードを使用します。最も重要な
  5. 、あなたが上記バイパスすることができますので、次の時間が
+0

私が答えを見つけようとしている主な質問は、Webブラウザで任意のユーザーがログオンするのではなく、ユーザー名とパスワードをハードコードしたい場合はOAuthを使用できます。 –

+0

実際、ユーザー名とパスワードでtwitterのapiに直接アクセスすることはできません。oauthではこれを許可していません。あなたの目標をアーカイブするためにTwitter APIのプロキシを使用することができます。あなたがコールバックURLを与える必要がないので、あなたがクライアントアプリケーションを使用することができますtwip(Googleコードでホストされている)知っている有名な1つです。 – ayanamist

+0

OK、私はちょうどあなたの目標を達成するために答えを編集します – ayanamist

2

はまたlinq2twitter LIBで戦利品を取る手順クライアントのマシンにアクセストークンを格納する必要があります。それはドキュメンテーションです。

Twitter APIは、 Representative State Transfer(REST)を使用して構築されています。 WikipaediaはRESTを "... 分散ハイパーメディアシステム用のソフトウェアアーキテクチャー"と定義しています。 しかし、私はそれが意味するものを簡略化するために を試すほど大胆になるつもりです。 練習では、RESTはハイパーテキスト転送 プロトコル(HTTP)で構築されたWebサービス プロトコルです。 REST Web サービスを使用するには、 URLでHTTP呼び出しを行い、テキストを フォーム(通常はXMLまたはJSON)に戻します。あなたは、次のURLで HTTPリクエストをしたコードの書き込みをしたのであれば、 :

http://api.twitter.com/1/statuses/public_timeline.xml

をあなたは 公開タイムラインからTwitterのステータスのすべてをXMLドキュメント を取り戻すだろう、これあなたのリクエスト時に最後の20のつぶやきの時間内に スナップショットが です。 にアクセスしてブラウザを開き、上記URLの をコピーしてアドレスバーの に貼り付け、返品を確認します。

0

ただ、C#でのTwitterボットを書きました。これは現在、ツイートを@valuetraderteamに投稿しています。

https://gist.github.com/sdesalas/c82b92200816ecc83af1

以下GISTにおけるAPIコンポーネントが500未満の行である、唯一の依存性がJson.NETで、あなたは(あなたが標的にされているどのようなプラットフォームに依存します)のx64またはx86のいずれかの最新のDLLをダウンロードする必要がありますプロジェクトの参照としてインクルードします。コンソールアプリケーション

からつぶやきを作ることができる方法のページの一番下に例があり

がうまくいけば、これはそこにいくつか他の人に役立ちます。

関連する問題