根据 developer.yahoo.com/mail/ 和 IMAP 回复:
* OK [CAPABILITY IMAP4rev1 ID MOVE NAMESPACE X-ID-ACLID UIDPLUS LITERAL+ CHILDREN XAPPLEPUSHSERVICE XYMHIGHESTMODSEQ AUTH=PLAIN AUTH=LOGIN AUTH=XOAUTH2 AUTH=XYMCOOKIE AUTH=XYMECOOKIE AUTH=XYMCOOKIEB64 AUTH=XYMPKI] IMAP4rev1 imapgate-1.8.1_01.20166 imap1009.mail.ne1.yahoo.com
雅虎邮箱可以通过 IMAP 使用 OAuth(2) 身份验证访问。
我在https://developer.yahoo.com/apps/上注册了我的应用程序,所以我得到了客户端 ID 和客户端密码。我没有找到任何与邮件相关的范围(API 权限)。尽管如此,我还是选择了注册应用程序时显示的所有 API 权限。
我尝试同时实现 OAuth 和 OAuth2。
OAuth2:我无法获得范围“mail-r”的授权码。当我生成 URL(https://api.login.yahoo.com/oauth2/request_auth?client_id=CLIENT_ID&redirect_uri=oob&scope=mail-r&response_type=code)并在浏览器中打开它时,页面显示“开发人员:请从注册范围并再次提交。” 被展示。它适用于其他范围。例如,我可以获得“sdct-r”的授权码
OAuth:我可以获得访问令牌。但是当我使用 AUTHENTICATE XOAUTH2 命令发送它时,我得到“NO [AUTHENTICATIONFAILED] (#AUTH007) Bad scope”响应。
那么问题是应该设置什么范围来使用 IMAP 和 OAuth(2) 访问 Yahoo Mail?