发送邮件&短信(网易云信)

2023-11-05 01:32

本文主要是介绍发送邮件&短信(网易云信),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

##发送邮件&短信(网易云信)

###发送邮件

  • CURL发送邮件
    1.测试所安装的curl是否支持smtp(若是树莓派,安装一个curl的open-ssl就可以)
    curl-config --protocols |grep SMTPSMTPSMTPS
    

2.确认邮箱的第三方客户端密码(163、qq都有设置)
3.curl发送代码(没有尝试发送附件,后加)
```
curl -s --url “smtp://smtp.163.com” 
–mail-from "xxxx@163.com"
–mail-rcpt "12345678@qq.com" \
–upload-file mail.txt --user "xxxx@163.com:xxxxxx"

参数说明: --url 邮箱服务器地址 可在163、qq等邮箱上找到--mail-from  发件人--mail-rcpt  收件人--upload-file 正文--user  发送人的邮箱账号:第三方客户端密码
mail.txt文件格式说明From:xxxx@163.comTo:123456@qq.comSubject: 邮件测试你好!这是一封测试邮件
```
  • 163设置第三方客户端密码
    163
  • qq邮箱设置第三方客户端密码
    qq
  • 163发送邮件到qq邮箱
    163toqq

###发送短信

本想用飞信的,但是不提供API,网友提供的又不能用,我也没去分析飞信的url。就换成了网易云信,
功能挺强,发送也挺简单,但是太贵,最少40000(2000块钱!)。

  • 注册云信账号,创建应用
  • 添加短信功能,购买短信(最少40000条)或者免费试用(需要等待审核,太慢)
  • curl发送短信功能代码

curl -X POST -H “AppKey:你的应用appkey”
-H “CurTime: 当前时间戳,最多使用五分钟”
-H “CheckSum: 校验和(最开始坑在这)”
-H “Nonce: (随机数最多12位)” \
-H “charset: utf-8”
-H “Content-Type: application/x-www-form-urlencoded”
-d ‘templateid=模板号(最后坑这,放弃了使用)&mobiles=[“手机号”]&params=[“hello”]’ \
‘https://api.netease.im/sms/sendtemplate.action’
```

  • 参数:CheckSum&CurTime

    • CheckSum
      CheckSum=SHA1(AppSecret + Nonce + CurTime)
      三个参数(应用密码+随机数+当前时间戳)拼接的字符串,进行SHA1哈希计算,转化成16进制字符(String,小写)

    • CurTime:获取当前时间戳(最多使用五分钟)
      shell命令:date ‘+%s’    结果: 1489329510

    • templateid短信模板:自己添加,之后等待审核。很慢。

  • 参考:

    • curl发送邮件
    • 网易云信API概述
    • 网易云信短信API
  • 附录:CheckSum java代码

import java.security.MessageDigest;
public class CheckSumBuilder {public static void main(String[] args){//我在这写了个固定输出,把你的APP_Secret 随机数 CurTime传进去生成校验和填到上述代码的//CheckSum处	   System.out.println(getCheckSum("a98cf236e6b",\"4tgggergig6w323t23t", \"1489323670"));}// 计算并获取CheckSumpublic static String getCheckSum(String appSecret, String nonce, String curTime) {return encode("sha1", appSecret + nonce + curTime);}// 计算并获取md5值public static String getMD5(String requestBody) {return encode("md5", requestBody);}private static String encode(String algorithm, String value) {if (value == null) {return null;}try {MessageDigest messageDigest= MessageDigest.getInstance(algorithm);messageDigest.update(value.getBytes());return getFormattedText(messageDigest.digest());} catch (Exception e) {throw new RuntimeException(e);}}private static String getFormattedText(byte[] bytes) {int len = bytes.length;StringBuilder buf = new StringBuilder(len * 2);for (int j = 0; j < len; j++) {buf.append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);buf.append(HEX_DIGITS[bytes[j] & 0x0f]);}return buf.toString();}private static final char[] HEX_DIGITS = { '0', '1', '2', '3', '4', '5','6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
}

这篇关于发送邮件&短信(网易云信)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/346512

相关文章

android 免费短信验证功能

没有太复杂的使用的话,功能实现比较简单粗暴。 在www.mob.com网站中可以申请使用免费短信验证功能。 步骤: 1.注册登录。 2.选择“短信验证码SDK” 3.下载对应的sdk包,我这是选studio的。 4.从头像那进入后台并创建短信验证应用,获取到key跟secret 5.根据技术文档操作(initSDK方法写在setContentView上面) 6.关键:在有用到的Mo

Steam邮件推送内容有哪些?配置教程详解!

Steam邮件推送功能是否安全?如何个性化邮件推送内容? Steam作为全球最大的数字游戏分发平台之一,不仅提供了海量的游戏资源,还通过邮件推送为用户提供最新的游戏信息、促销活动和个性化推荐。AokSend将详细介绍Steam邮件推送的主要内容。 Steam邮件推送:促销优惠 每当平台举办大型促销活动,如夏季促销、冬季促销、黑色星期五等,用户都会收到邮件通知。这些邮件详细列出了打折游戏、

邮件群发推送的方法技巧?有哪些注意事项?

邮件群发推送的策略如何实现?邮件推送怎么评估效果? 电子邮件营销是现代企业进行推广和沟通的重要工具。有效的邮件群发推送不仅能提高客户参与度,还能促进销售增长。AokSend将探讨一些关键的邮件群发推送方法和技巧,以帮助企业优化其邮件营销策略。 邮件群发推送:目标受众 了解他们的需求、兴趣和行为习惯有助于你设计出更具吸引力和相关性的邮件内容。通过收集和分析数据,创建详细的客户画像,可以更精

Python利用qq邮箱发送通知邮件(已封装成model)

因为经常喜欢写一些脚本、爬虫之类的东西,有需要通知的时候,总是苦于没有太好的通知方式,虽然邮件相对于微信、短信来说,接收性差了一些,但毕竟免费,而且支持html直接渲染,所以,折腾了一个可以直接使用的sendemail模块。这里主要应用的是QQ发邮件,微信关注QQ邮箱后,也可以实时的接收到消息,肾好! 好了,废话不多说,直接上代码。 # encoding: utf-8import lo

适用于 Android 的 几种短信恢复应用程序

Android 设备上的短信丢失可能由于多种原因而丢失,例如意外删除、恢复出厂设置、系统崩溃或病毒攻击。是否有应用程序可以恢复 Android 上已删除的短信?幸运的是,有几款短信恢复应用程序可以扫描您的 Android 手机并从内存或 SIM 卡中检索已删除的短信。 然而,并非所有短信恢复应用程序都是可靠或有效的。有些可能无法恢复消息,有些可能会损坏您的数据,有些甚至可能包含恶意软件或间谍软件

407串口01发送

实验一: 工程。 链接:https://pan.baidu.com/s/1g8DV4yZWOix0BbcZ08LYDQ?pwd=2176 提取码:2176 串口1的使用。发送功能。 单片机发送信息到电脑。 通过串口进行通信。 首先单片机这边。 单片机这边,需要对单片机的串口模块进行使能初始化,设置串口的格式。 单片机和电脑的串口收发格式要配置一致。不然A和B肯定通信不成功,鸡和鸭讲,

某大厂程序员吐槽:离职交接时,新人被工作量吓退,领导却污蔑我故意劝退新人,我怒晒工作短信反击证明,新人看了后也决定走人了!

一位知名大公司的程序员分享了他离职时的遭遇:在交接工作时,新进的同事因工作量过大而感到压力,但出乎意料的是,他们的领导却指责我故意吓唬新人。为了证明自己的清白,我晒出了工作短信作为反击,结果连新人也决定离开。 在任何组织里,团队文化的优劣都是决定工作效率和质量的关键。一个和谐相处的团队不仅能提升工作效率,还能使工作氛围变得轻松愉快。 然而,一旦团队内部出现权力斗争或领导偏爱小团体、

实际项目开发:Spring集成Redis,并实现短信登录功能

redis新手,学了几种基本数据类型,却不知道怎么使用? 总是一边学一边忘? 学会了Redis的大多数使用命令,却不知道如何在项目中使用? 本文将从实际出发,为大家解决这些问题。 我是蚊子码农,欢迎各位的点赞、关注和收藏,有了你们的激励,我会带来更好的作品。 一、环境准备 从环境出发。 第一,基础环境: JDK版本:JDK1.8。构建工具:Maven。开发工具:IDEA。基础依赖:Spri

phpmailer 邮件模拟注册验正

下载phpmailer类 我本次的实验用的是版本 5.2.9 下载后解压提取文件class.smtp.php class.phpmailer.php PHPMailerAutoload.php 放在phpmailer目录里 1.链接数据库 conn.php   $conn=mysql_connect("localhost","root","");    if(!$conn){

ubuntu 18.04 server源码编译安装freeswitch 1.10.7支持音视频通话、收发短信——筑梦之路

软件版本说明 ubuntu版本18.04:https://releases.ubuntu.com/18.04.6/ubuntu-18.04.6-live-server-amd64.iso freeswitch 版本1.10.7:https://files.freeswitch.org/freeswitch-releases/freeswitch-1.10.7.-release.tar.gz s