アカウント名:
パスワード:
@直前のドットや連続したドットをメールアドレスに含んでもいいんですよ。二重引用符でクォートすれば。ちなみにこれらの規則を定めているRFCはSMTPのメッセージフォーマットに関するものなので、MUAのアドレス欄とかWebのフォーム等に入力するメールアドレスまでもが遵守する必要はどこにもありません。SMTPメッセージとして送受信するときにだけ確実にクォートされれば十分ですし、それは機械的に行えます。ユーザーに対して何らかの注意や対応を促す必要はどこにもありません。Webブラウザの場合も、アドレスバーに入力したり表示されたりするURLはRFC 2616に従っているとは限りませんが、そんなことはWebブラウザが知っていればいいのです。それと同じことです。たぶん、周囲のRFCに従っていないシステムで不具合が起きる可能性を考慮したのでしょうけど。
@直前のドットや連続したドットをメールアドレスに含んでもいいんですよ。 二重引用符でクォートすれば。
そのとおりですね。 そして二重引用符そのものを含めることもできますよね。 適切にクォートすれば。
ちなみにこれらの規則を定めているRFCはSMTPのメッセージフォーマットに関するものなので、 MUAのアドレス欄とかWebのフォーム等に入力するメールアドレスまでもが遵守する必要はどこにもありません。
(「SMTPの」という部分は不要ですが)そのとおりですね。 さて、
"foo"
や
foo"bar
のような、二重引用符をその一部とする アカウントを作成した場合にメールアドレスを伝えるにはどうしたらよいでしょうか? 逆に、
"foo"@example.org
"foo\"bar"@example.org
という 文字列がメールアドレスとして与えられたとき、プログラムはどう処理したらよいでしょうか?
たぶん、周囲のRFCに従っていないシステムで不具合が起きる可能性を考慮したのでしょうけど。
全てのシステムがRFCに準拠したとして、ユーザはクォートを意識して使いこなすことができるでしょうか? あるいは、ユーザがクォートを意識する必要のないシステムは実現可能でしょうか?
RFCに準拠して真面目に処理してもいいですし、さらに制限を加えて、エラー吐いてもいいんじゃないでしょうか。もちろん独自仕様にして、非準拠なアドレスであっても、メールを送る際にRFCに準拠するように書き換えても(安全に作るためには、コストが見合わないと思いますが)。どこまで通すかはコストとのトレードオフで……。現実は、備え付けのバリデータを使いますから、その仕様次第(多くはRFC5322よりも制限された状態)になると思いますよ。
二重引用符をその一部とするアカウントを作成した場合にメールアドレスを伝えるにはどうしたらよいでしょうか?
二重引用符を伝えたらよろしいのではないでしょうか。少なくとも電子メールメッセージ中でどのように表現されているかを考慮して伝える必要などありません。
という文字列がメールアドレスとして与えられたとき、プログラムはどう処理したらよいでしょうか?
そのMUA(など)の仕様に従って処理したらよろしいのではないでしょうか。ブラウザのアドレスバーにどんな文字列を入力されたらどんな処理が行われるかも、すべてのブラウザで統一されているわけではありません。もちろんSMTP経由でメール
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
何で制限する方向でしか対応できないのかなあ (スコア:0)
@直前のドットや連続したドットをメールアドレスに含んでもいいんですよ。二重引用符でクォートすれば。
ちなみにこれらの規則を定めているRFCはSMTPのメッセージフォーマットに関するものなので、MUAのアドレス欄とかWebのフォーム等に入力するメールアドレスまでもが遵守する必要はどこにもありません。SMTPメッセージとして送受信するときにだけ確実にクォートされれば十分ですし、それは機械的に行えます。ユーザーに対して何らかの注意や対応を促す必要はどこにもありません。Webブラウザの場合も、アドレスバーに入力したり表示されたりするURLはRFC 2616に従っているとは限りませんが、そんなことはWebブラウザが知っていればいいのです。それと同じことです。
たぶん、周囲のRFCに従っていないシステムで不具合が起きる可能性を考慮したのでしょうけど。
Re:何で制限する方向でしか対応できないのかなあ (スコア:1, 興味深い)
そのとおりですね。 そして二重引用符そのものを含めることもできますよね。 適切にクォートすれば。
(「SMTPの」という部分は不要ですが)そのとおりですね。
さて、
や
のような、二重引用符をその一部とする アカウントを作成した場合にメールアドレスを伝えるにはどうしたらよいでしょうか?
逆に、
や
という 文字列がメールアドレスとして与えられたとき、プログラムはどう処理したらよいでしょうか?
全てのシステムがRFCに準拠したとして、ユーザはクォートを意識して使いこなすことができるでしょうか?
あるいは、ユーザがクォートを意識する必要のないシステムは実現可能でしょうか?
Re:何で制限する方向でしか対応できないのかなあ (スコア:1)
RFCに準拠して真面目に処理してもいいですし、さらに制限を加えて、エラー吐いてもいいんじゃないでしょうか。もちろん独自仕様にして、非準拠なアドレスであっても、メールを送る際にRFCに準拠するように書き換えても(安全に作るためには、コストが見合わないと思いますが)。どこまで通すかはコストとのトレードオフで……。
現実は、備え付けのバリデータを使いますから、その仕様次第(多くはRFC5322よりも制限された状態)になると思いますよ。
Re: (スコア:0)
二重引用符を伝えたらよろしいのではないでしょうか。少なくとも電子メールメッセージ中でどのように表現されているかを考慮して伝える必要などありません。
そのMUA(など)の仕様に従って処理したらよろしいのではないでしょうか。ブラウザのアドレスバーにどんな文字列を入力されたらどんな処理が行われるかも、すべてのブラウザで統一されているわけではありません。
もちろんSMTP経由でメール