问题是这样的:我使用的第三方电子邮件递送服务不接受名称部分包含非 ASCII 字符的邮件地址,例如 müller@example.com 。
用 Punycode 编码这样的地址:
http://en.wikipedia.org/wiki/Punycode
产生这个地址:
xn--mller-kva@example.com
通过该服务向它发送邮件似乎可行。
但是,我不确定是否有人不能直接注册“xn--mller-kva@example.com”,从而接收到“müller@example.com”的电子邮件。
这有可能发生冲突吗?这个问题还有其他解决方案吗?
更新
感谢您的回答。以下是我们学到的总结:
- Punycoding 电子邮件地址的本地部分有效,您可以从这样的编码地址发送和接收(当然)
- 但是,完全不能保证提供商或邮件客户端会理解编码,或者会自动进行编码。因此,冲突是可能的,整个想法不是一个好主意:)
- 一个人应该简单地做其他人所做的事情,即按照规范不允许或接受非 ASCII 名称部分
- 最后,事实证明第三方服务无论如何都禁止这种恶作剧。