きり丸の技術日記

技術検証したり、資格等をここに残していきます。

Gmailでテキストメールを受信して確認する(クライアント問わない方法)

Gmailでテキストメールを送信する方法はたくさん見つかったのですが、受信してテキストメールを確認する方法は見つからなかったのでブログにします。

なお、GmailではHTMLメールとテキストメールを選んで受信はできません。そのため、受信するではなく、受信してテキストメールを確認するが本題です。

環境

  • Gmail
    • 20240320時点

確認方法

テキストメールを確認したいメールのソースを確認する

確認したいメールを開き、「︙」をクリックしてメッセージのソースを確認を選択します。

デコードしてテキストメールを確認する

メッセージのソースからテキストメールの箇所を探します。text/plainのブロックを探してください。画像では6LO86Kqから始まり、ZS5qcC8Kで終わるブロックです。

今回の場合、Content-Transfer-Encoding: base64というメールヘッダがbase64でencodeされていることを示しているので、こちらをbase64でdecodeするとテキストメールの内容を確認できます。

なお、base64でのencode, decodeが必要ない言語ではそのまま確認できます。

そもそもテキストメールとHTMLメールを両立できるのか

マルチパートメールという仕組みによって、テキストメールとHTMLメールを両立できます。ファイル添付ができるのもこちらの仕組みです。

詳細はSendgrid様のページで解説してくれています。

終わりに

メールについて詳しい仕様を知らなかったので、この方法で確認できるのを最近知りました。GmailがHTMLメールしか受信できないから、受信時にテキストメールを切り捨てているのかと思っていました。

基本的にはHTMLメールの検証だけでよいのですが、ごくまれにテキストメールの検証も必要だったのでこれで検証できると分かってよかったです。

参考情報