Node.JSのGoogle Gmail APIからメッセージを取得していますが、電子メールへの直接リンクの生成や取得に問題があります。Gmail APIから電子メールへの直接URLを取得する(リストメッセージ)
var link = 'https://mail.google.com/mail/u/0/#inbox/' + messageContent.threadId;
をしかし、uが見ることができるように、それは常にユーザーのプライマリ受信トレイ(/u/0/
)へナビゲート:
現在、私は次のコードを使用しています。私がリンクしようとしているメールは、2番目と3番目の受信トレイにあります。
get message callを使用して電子メールの受信ボックス番号を取得しようとしましたが、残念ながらそのデータは返されません。
また、次のコードを試しましたが、うまくいきませんでした。私のメインの受信トレイを読み込むだけです。
var link = 'https://mail.google.com/mail/#inbox/' + messageContent.threadId;
誰もが電子メールに正しいと直接リンクを生成する方法を知っていますか?
ありがとうございます。
最初のテストケースは、Googleの2つの以上のアカウントへのログイン。下の画像にあるように、私は3つのアカウントにログインしています。最初のもの(上)が私の主要なアカウントです。他のアカウントはセカンダリアカウントです。
私の主なGmailへの直接リンクは次のとおりです。私の第二のアカウントへhttps://mail.google.com/mail/U/0/#受信トレイ/
直接リンクは次のとおりです。 https://mail.google.com/mail/U/1/#受信トレイ/
そして、私の第3の最後のアカウントのリンクは次のとおりです。 https://mail.google.com/mail/U/2/#受信ボックス/
これらの数値は、アカウントにログインした順番によって異なります。ログインした最初のアカウントは常にプライマリアカウントになります。
したがって、メッセージIDの例として2527bfcqed7d54c1
を取ることができます。残っているのはメッセージへの直接リンクを生成することだけですが、問題は受信トレイの番号ではなく、リンクされている電子メールだけです(例:/u/2
)。
メッセージが受信トレイ/u/2
に存在する場合、直接リンクを取得できません。 APIは受信ボックス番号を返さないため、https://mail.google.com/mail/#inbox/2527bfcqed7d54c1
は常にプライマリ受信トレイ/u/0
にリダイレクトされます。
:あなたはしかし、同様の効果を得るために、メッセージのユニークな
Message-ID
ヘッダーを検索することができます/ questions/29415495/get-direct-link-to-gmail-message-via-google-api) – Teyam私は試しましたが、うまくいかなかった。最初の受信トレイにリダイレクトされ、メッセージが存在しないことがわかります。カレンダーイベントにリンクするときも同じ問題があります。 – Tijme