"Identyfikator HexEncodeMessage", do którego się odnosisz (i który występuje w linkach takich jak https://mail.google.com/mail/#inbox/14197d2548c9da1a) jest niestety różny od identyfikatora komunikatu RFC822 (występującego w źródle wiadomości e-mail).
ja nie znam żadnego sposobu, aby uzyskać bezpośredni link do wiadomości e-mail przy użyciu identyfikatora wiadomość RFC822, ale możliwe jest, aby szukać konkretnej wiadomości RFC822 ID w Gmailu (patrz GMail doc):
in:anywhere rfc822msgid:[email protected]
można przekształcić linkiem:
https://mail.google.com/mail/#search/in%3Aanywhere+rfc822msgid%[email protected]
(nie należy zapominać, że id wiadomość powinna być URL-encoded Możesz też po prostu wpisać wyszukiwanie w Gmailu i skopiuj wynikowy URL później.).
Problem z tym łączem polega na tym, że nie przesyła on bezpośrednio wiadomości e-mail, ale na stronę wyników wyszukiwania za pomocą jednego działania. Ale może to być wystarczająco dobre dla niektórych aplikacji.
Zaletą jest: RFC822 jest taki sam na koncie i koncie nadawcy. Jeśli więc chcesz odnieść się do danej wiadomości e-mail w e-mailu/na czacie, możesz podać ten link wyszukiwania (zakładając, że odbiorca używa również Gmaila). Z "HexEncodeMessageID" to nie zadziałałoby, ponieważ jest inne na każdym koncie (zgodnie z moimi własnymi eksperymentami).
Ostatnia sprawa: tylko link działa, gdy jesteś już zalogowany
Identyfikator wiadomości powinien zostać zmieniony na ID wiadomości, aby zadziałał –
Dobrze. W nagłówkach nie jest uwzględniana wielkość liter, więc zaktualizowałem wyrażenie regularne, aby ignorować wielkość liter. – dta