我们一直使用GMAIL的Restful API来发送邮件,但是最近我们一直收到请求,要求支持发送非ASCII邮件地址的邮件。
我能够使用RFC2047(Mime-encoded word)来正确编码主题和 "from "电子邮件地址头。但是用同样的方法发送 "to"-收件人的邮件地址却失败了。
所以我的问题是:
非常感谢你的时间,如果这是个重复的地方,我提前道歉。
这个答案被发布为社区wiki,因为它是来源两个伟大的Stack Overflow答案的主题.
在回答这个问题的时候,Gmail和其他邮件服务仍在从只支持ASCII字符过渡到支持UNICODE字符的电子邮件地址和主题形式。因此,你需要将你的邮件地址串用base64编码才能发送邮件。
这个堆栈溢出答案 清楚地详细说明了邮件服务器如何解释电子邮件地址的域名和名称,以及能够向这些地址发送电子邮件的变通方法。
如果你想要一个更具体的Gmail API答案。这个其他的Stack Overflow解决方案 解释了你应该如何对你的字符串进行编码,以便能够发送这些非ASCII电子邮件。
我希望这对你有帮助。如果你还需要什么,或者你有什么不明白的地方,请告诉我。)