以前当ブログで、GASでメールのMessage-IDヘッダーを取得するスクリプト(下記記事参照)を紹介しましたが、Apps Scriptのアップデートによって、より簡単にメールヘッダーの値を取得できるようになりました。
GmailMessage.getHeaderメソッドの追加
5月20日付で追加されたGmailMessage.getHeaderメソッドを使うことで、ヘッダー名を指定するだけで値を取得することができます。
//ヘッダー名を指定してRFC 2822ヘッダーの値を取得 function myFunction() { var msg = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0]; Logger.log(msg.getHeader("Message-ID")); }
上記はMessage-IDヘッダーの値を取得するコードですが、以前書いたコード(下記)に比べて大分スッキリしました。
//メールからMessage-IDヘッダーを取得 function getMessageIdHeader() { var msg = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0]; var content = msg.getRawContent(); var matches = content.match(/^Message-ID:.*$/gim); if (matches !== null) { for (var i = 0; i < matches.length; i++) { Logger.log(matches[i]); } } }
今後、Message-IDやMIME-Versionなど、何かしらの値が必要な場合には、是非getHeaderメソッドをお使いください。
この記事へのコメントはありません。