关于使用jwSMTP库发送邮件的一个诡异问题

  大家知道,jwSMTP是一个简单易用的发送Email的开源C++库。笔者在系统业务中存在发送报警邮件的需求,

系统是python语言开发的,于是使用了这个库并将其包装成python接口(python内置的发邮件模块容易存在编码问题,不方便控制)

感觉不错,简单快捷稳定,编码一切正常,可是经过实测发现所有发送的邮件的“发送时间”都与实际时间存在几个小时的偏差,而且偏差是固定。

几番痛苦折腾无果,最后查看邮件SMTP协议相关的技术文档,有这么一段话:

 

恍然大悟,于是用单步调试模式跟踪jwSMTP发送代码的代码,最后在如下这个地方找到了问题的答案:

 

在源代码mailer.cpp文件中发送时间戳字符串那地方的结尾加上" +0800" 就正常了!

可见我们在引入国外一些优秀的开源项目时应多注意“编码”和“时区”这类很容易出现的问题,做好“本地化”工作。

转载于:https://www.cnblogs.com/johan/archive/2013/03/26/2982805.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值