2

twitter4j ライブラリを使用して、Java でデスクトップ Twitter クライアントを作成しています。アプリの API キーとシークレットを取得しました。リクエスト トークンを取得したら、ユーザーが Web ブラウザーで開く必要がある認証 URL を取得し、アカウントからログインして、アプリへのアクセスを許可し、アクセス PIN を取得します。この PIN をアプリに入力すると、アプリはユーザー アカウントに永続的にアクセスできるようになります。Java でログイン/ピン プロセスの取得を自動化する方法はありますか?

私が達成したいのは、ユーザーが自分のユーザー名とパスワードをアプリ自体に入力する必要があり、アプリが自動的にアクセス PIN を取得することです。Web ブラウザーの介入は必要ありません。どうすればこれを達成できますか?助けてください!

4

4 に答える 4

0

うーん、それは不可能だと思います:( Java内でブラウザを開くなど、いくつかの醜い回避策があるかもしれません..そのようなもの...

でもブラウザがないと無理だと思います。

于 2011-07-19T13:11:28.977 に答える
0

統合ブラウザのアプローチを試してみると思います。http POST リクエストは複雑に思えますが、これまで Web 関連のコーディングを行ったことがありません。DJ Project のサイトにある例は有望に見えます。ありがとう!

于 2011-07-19T16:17:11.337 に答える
0

Twitter の実装の詳細に飛び込むことなく、いわゆるフォームベースの認証を使用していると言えます。つまり、ブラウザはユーザー資格情報を HTTP POST リクエストとしてサーバーに送信します。それがどのように機能するかを発見し、同じことを行う必要があります。サーバーに送信されたリクエストに関する情報を取得するには、Firefox プラグインの「ライブ HTTP ヘッダー」や Wireshark を使用できます。

于 2011-07-19T13:12:27.463 に答える
0

Google はClientLoginと呼ばれる認証方法を提供しています。

Twitter API が同様の oauth メソッドを提供しているかどうかを確認する必要があります。これは、デスクトップ アプリに適した方法です。Twitter API の認証方法を検索して、Google ClientLogin と同様の方法を探します。ない場合は、DJ Projectなどの組み込みスイング ブラウザーを使用してみて、DJNative スイング組み込みブラウザー内で Twitter 認証を行ってください。

于 2011-07-19T13:19:55.243 に答える