Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.7.3版本iOS收信正文格式问题 #212

Closed
4 tasks done
linyuancode opened this issue Sep 28, 2024 · 12 comments
Closed
4 tasks done

2.7.3版本iOS收信正文格式问题 #212

linyuancode opened this issue Sep 28, 2024 · 12 comments
Labels
welcome pr Welcome Pull Request

Comments

@linyuancode
Copy link

完整性要求 / Integrity requirements

  • 我保证阅读了文档,了解所有我编写的配置文件项的含义,而不是大量堆砌看似有用的选项或默认值。
  • 我提供了完整的配置文件和日志,而不是出于自己的判断只给出截取的部分。
  • 我搜索了issues,没有发现已提出的类似问题。
  • 我已经阅读了项目Readme常见问题

版本

2.7.3

描述

首先感谢作者对iOS用户收信需求的响应。在更新2.7.3版本后,iOS自带邮件可以正常收取大部分邮件,但是少数邮件正文格式表现为源码形式,如下图。该邮件为GitHub邮箱验证邮件,在web界面查看是正常的,在安卓端QQ邮箱查看也正常,仅在iOS邮件中表现为类似源码的格式。
IMG_0034

重现方式

iOS系统邮件绑定pmail邮箱收GitHub邮箱验证邮件可以重现。

服务端配置


服务端日志


@shidahuilang
Copy link

你的发信正常吗?我的发信不太正常哦

@Jinnrry
Copy link
Owner

Jinnrry commented Sep 28, 2024

你的发信正常吗?我的发信不太正常哦

#170 参考第8点,看下发件服务器设置对了吗,IOS邮件app默认不会给你填密码,是不是没填密码呀

@shidahuilang
Copy link

你的发信正常吗?我的发信不太正常哦

#170 参考第8点,看下发件服务器设置对了吗,IOS邮件app默认不会给你填密码,是不是没填密码呀

账户密码都填写了,很神奇,我关掉wifi,用手机流量竟然可以了,我把路由器的v6关闭后还是收不到,但是我用4G在发一封的话,wifi发的那一封连带着4G的都会发出去,应该是我这边网络的原因

@shidahuilang
Copy link

找到了,是我这边网络问题!真的感谢大佬解决了ios不能使用的问题!真心感谢!

@Jinnrry
Copy link
Owner

Jinnrry commented Sep 29, 2024

试了好多邮件,好像只有github发送的邮件样式会乱。但是反复检查了程序返回,没找出有什么问题。邮件传输过程中会使用quoted-printable编码,感觉遇到github邮件的时候,邮件客户端像是解码失败了。但是我找了好多工具测试,PMail返回的内容都是符合quoted-printable编码规则的。

具体啥情况我也找不出来了。我猜测:
1、IOS邮件客户端解码失败了
2、Github邮件里面写了某些客户端不支持的样式属性,导致渲染出错了

@linyuancode
Copy link
Author

Google发的也有特定的通知邮件是和这个一样的错误。总体来说基本不影响使用,说不定以后偶然就发现是什么问题导致的了😂

@Jinnrry Jinnrry added the welcome pr Welcome Pull Request label Oct 5, 2024
@linyuancode
Copy link
Author

经过半个月的使用,发现错乱的远不止GitHub验证邮件,还有许多大公司的通知和验证邮件,希望作者考虑进一步排查一下。

@Jinnrry Jinnrry mentioned this issue Oct 15, 2024
4 tasks
@Jinnrry
Copy link
Owner

Jinnrry commented Oct 15, 2024

嗯,等我哪天有空再研究研究。这玩意涉及第三方,实在是不好查

@linyuancode
Copy link
Author

嗯,等我哪天有空再研究研究。这玩意涉及第三方,实在是不好查

感谢作者积极适配🙏

@shidahuilang
Copy link

image
image
用ios自带的邮箱验证链接就会跳出来这个,但是用电脑登录验证就很正常,是不是ios跳转浏览器哪里不对?

@Jinnrry
Copy link
Owner

Jinnrry commented Nov 3, 2024

#221

v2.7.5版本中已经修复。本质原因是因为邮件传输过程中使用quoted-printable编码格式,PMail使用的编码库为Golang标准库中的编码函数,代码位于 go1.22/src/mime/quotedprintable/writer.go:31,使用该方法编码后IOS邮件客户端无法解析,目前我也不知道是Golang编码函数有问题还是IOS邮件客户端的解码有问题。新版本把正文编码换成了base64

感兴趣的可以继续研究下究竟是“邮件”客户端bug,还是Golang标准库的bug。欢迎继续评论交流

@Jinnrry Jinnrry closed this as completed Nov 3, 2024
@shidahuilang
Copy link

#221

v2.7.5版本中已经修复。本质原因是因为邮件传输过程中使用quoted-printable编码格式,PMail使用的编码库为Golang标准库中的编码函数,代码位于 go1.22/src/mime/quotedprintable/writer.go:31,使用该方法编码后IOS邮件客户端无法解析,目前我也不知道是Golang编码函数有问题还是IOS邮件客户端的解码有问题。新版本把正文编码换成了base64

感兴趣的可以继续研究下究竟是“邮件”客户端bug,还是Golang标准库的bug。欢迎继续评论交流

好的,感谢!我会一直研究下去,直到ios完美!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
welcome pr Welcome Pull Request
Projects
None yet
Development

No branches or pull requests

3 participants