9

Gmailアカウントのすべてのメールをダウンロードし、認証を使用せずに、Gmailで正確なメールを開く一意のURLを取得したいと思います。javax.mail imapライブラリを使用してみましたが、Imapはおそらくそのようなものをサポートしていません。

「https://mail.google.com/mail/feed/atom」のGmailフィードを使用できます。しかし、私に電子メール全体を与えることはなく、それは未読の電子メールを与えるだけであり、私はどの電子メールも見逃したくありません

4

3 に答える 3

12

これは、Google Apps for Business/Educationを使用している場合に実行できます。その場合は、OAuthを使用してGmailの受信トレイフィード(Atom)にアクセスできます。OAuthを使用してIMAP経由でGmailにアクセスすることもできます。プログラムでIMAPサーバーに完全にアクセスできます。OAuthを使用したGmailIMAPとSMTPを参照してください。

GoogleはIMAPを拡張して、開発者がIMAPを介してGmailのようなエクスペリエンスを提供できるようにしました。(Gmail IMAP拡張機能、X-GM-EXT-1)を参照してください。

一意のメッセージ(X-GM-MSGID)と一意のスレッド(X-GM-THRID)IDを使用して、Gmailメッセージへのリンクを直接作成できます。IDを16進数でエンコードするだけです(例:Long.toHexString(x_gm_msgId)) 。その場合、リンクは次の形式である必要があります。

http://mail.google.com/mail?account_id=ACCOUNT_ID_HERE&message_id=MESSAGE_ID_HERE&view=conv&extsrc=atom

必要に応じて、 ACCOUNT_ID_HERE(user@someplace.comなど)とMESSAGE_ID_HEREを指定します。

私はこの分野で働いており、私のプロジェクトが役立つと思うかもしれません。java-gmail-imapを参照してください。

[注:上記のようにフォーマットされたURLは、Gmailのモバイルサイトでは機能しません(少なくともiPhone / Safariでは)。]

于 2011-09-06T13:44:21.770 に答える
0

https://mail.google.com/mail/#all/HexEncodeMessageIDHexEncodeMessageID の部分をIDに置き換えます。新しいウィンドウでメールを開くと、わかります(右上隅のポップアウトアイコンを使用します。IDは次のようになります:search = inbox&th = 1426b8f59e003aa0

于 2013-11-19T21:51:27.500 に答える
-1

これは不可能だと私はかなり確信しています。Gmailで単一のメールにつながる一意のURLを取得する信頼できる方法はありません。そうでなければ聞きたいです!

メッセージを含むGmailスレッドにつながるURLを取得することは可能だと思いますが、このスレッド表示で「展開」されるメッセージを制御することはできません。

于 2011-03-23T17:29:33.413 に答える