首页 > 网名大全 正文
(qq邮箱关于发件人名字)qq邮箱下载官方下载…

时间:2023-02-22 08:37:25 阅读: 评论: 作者:佚名

字首

由于价格监控项目的需要,实施了小邮件发送接口服务,使用单独的SpringBoot项目命名为spring-mail-sender,Github上公开了开源。

内部我给他命名为提醒服务,因为未来希望还能扩展下,用来做短信发送服务,或者安卓等推送服务的API。

简介

本项目使用springboot,采用web api的方式提供邮件,短信等服务的调用接口,目前仅支持邮件提醒。

邮件提醒特点:

  • 本地配置文件设置邮件账户密码和smtp
  • 使用post来调用发送邮件请求,post中使用json数据填充:发件人昵称,收件人昵称,收件人邮箱,主题,正文。
  • 调用接口返回状态码定义:(1=正常,2=错误,3=未登录,4=自定义错误(直接抛出errorMes))
  • 发件人,收件人支持别名。

本项目待完成:

  • x调用接口鉴权:防止无权限人员调用 x调用接口频率限制:防止滥用接口 x调用日志存储

项目结构如下:

├─main │ ├─java │ │ └─com │ │ └─demo │ │ └─springmailsender │ │ │ S │ │ │ SwaggerCon │ │ │ │ │ ├─domain │ │ │ EmailReque │ │ │ Re │ │ │ │ │ ├─service │ │ │ EmailService.java │ │ │ EmailServiceIm │ │ │ │ │ └─web │ │ EmailCon │ │ │ └─resources │ a │ └─test └─java └─com └─demo └─springmailsender S

问题解决

发件人无法自定义别名

发现邮件发件人,也就是只能以用户的邮箱地址作为昵称,发件效果是这样的:

{ "address": "xxxxx@qq.com", "from": "2897788509@qq.com", // 必须和发件邮箱完全一致 "msg": "string", "subject": "string", "to": "xxxxxxx@qq.com" }

image

如果不一致,或者填写了用户别名,就会报如下错误:

image

我就很纳闷,因为之前我用python写了个发送邮件的api,明明是可以别名的啊,于是我打开了python的邮件api,看到如下代码,我将名称编码为了UTF-8:

@staticmethod def _format_addr(s): # format the email address name, addr = parseaddr(s) return formataddr((Header(name, 'utf-8').encode(), addr))

随后我又去谷歌了一阵,参考:

原来想要使用发件人别名,就必须对发件字段进行编码:

严格格式为:别名<邮件地址>

image

然而,网上很多种答案要么引入了new InternetAddress(alias + " <"+from+">"),要么编码为GBK,我最后还是直接编码为UTF-8:

String fromByte = new String() + " <" + fromAddress + ">") .getBytes("UTF-8")); String toByte = new String() + " <" + emailReque() + ">") .getBytes("UTF-8")); (fromByte); (toByte); ()); ());

大功告成:

image

关注我

我目前是一名后端开发工程师。技术领域主要关注后端开发,数据爬虫,数据安全,5G,物联网等方向。

Github:@qqxx6661

个人博客:

  • CSDN:@qqxx6661
  • 知乎:@Zhendong
  • 简书:@蛮三刀把刀
  • 掘金:@蛮三刀把刀

原创博客主要内容

  • Java知识点复习全手册
  • Leetcode算法题解析
  • 剑指offer算法题解析
  • SpringCloud菜鸟入门实战系列
  • SpringBoot菜鸟入门实战系列
  • Python爬虫相关技术文章
  • 后端开发相关技术文章

个人公众号:后端技术漫谈

如果文章对你有帮助,不妨收藏起来并转发给您的朋友们~

下一篇:返回列表
  • 相关阅读
  • 评论列表

发表评论: