810T のメールヘッダ[お仕事]
(2009-05-19 09:40:55) by shinoda


メール解析のプログラムを作成してて気づいたのだが、SoftBank の携帯(テストで使ってたのは、俺の 810T だが)のメールヘッダって、Content-Type ヘッダの後ろに空白を入れないんだな。

例えば、PC のメールソフト(Outlook とか EDMax とか AL-Mail とか諸々)だと、Content-Type ヘッダは、

Content-Type: multipart/mixed;

こんな感じで、'Content-Type:' の後ろに半角スペースがひとつ入ってる。
でも、810T のメールは、

Content-Type:multipart/mixed;

なんだよ。
他にも、コンテンツの属性を示すヘッダ関係は軒並み、

Content-Type:text/plain;charset=ISO-2022-JP
Content-Disposition:attachment;filename="HOGEHOGE.JPG"
Content-Transfer-Encoding:base64

みたいな感じで全て半角スペースは含まれてない。

他のヘッダ(To とか From とか Subject とか)は、全て半角スペースが含まれているのに・・・である。

変な実装。(^^;
いや、RFC にどう書かれているのかわからないが、半角スペースが無いなら無いで全然かまわんのやけど、他のヘッダと、Content 関係だけがフォーマットに違いがあるのが何か気持ち悪いよなあ。

PC から出したメールに添付した画像は抜き出せるのに、携帯メールに添付した画像が抜けないので、何でかいな?と調べたらそういうことで、

if ($data =~ /Content-Type\:\s+(\S+[^\;]*?)/i) {

という正規表現を使った条件をすり抜けてた。

if ($data =~ /Content-Type\:\s*(\S+[^\;]*?)/i) {

とすればOK。

Foma とか AU の端末もこんなんかなあ?


コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.0.8