go 发送短信研究
前提:因为比较信的过阿里云的短信服务,因此本人调用阿里云上面的阿里通信。没有的可以先注册阿里云账号。并且发短信时需要钱的,需要充钱。
主要流程
-
登录阿里云
-
进入阿里云的短信服务。控制台中记录
-
添加签名和模块(要注意:验证码场景可与验证码模版匹配发送,通用场景可与验证码、短信通知、推广短信、国际/港澳台短信模版匹配发送)
-
调用接口进行
-
选择相对应的短信服务类型。填写参数。选择语言
-
填写参数之后,自动生成示例代码
-
获取AK信息
-
如果将代码复制出来单独运行,需要替换 "
", " "这两个值 -
代码模板
package main
import(
"fmt"
"log"
"strings"
"github.com/aliyun/alibaba-cloud-sdk-go/services/dysmsapi"
)
// 发送短信需要必要信息
var (
regionID = "" //地区id
accessKeyID = "" //密钥id
accessSecret = "" //密钥
)
func init(){
log.SetFlags(log.Lshortfile|log.Ltime)
}
func main(){
fmt.Println("发送短信")
// 创建客户端
client,err := dysmsapi.NewClientWithAccessKey(regionID,accessKeyID,accessSecret)
if err!=nil{
log.Println("使用密钥创建客户端失败:",err)
return
}
if client==nil{
log.Println("client is nill")
return
}
log.Println(client)
// 创建发送消息请求信息
log.Println("创建发送消息请求")
request:=dysmsapi.CreateSendSmsRequest()
log.Println("准备信息")
request.Scheme = "https"
request.PhoneNumbers = "" //手机号码
request.SignName = "" // 签名的名称
request.TemplateCode = "" // 模板代码
request.TemplateParam = "{\"code\":123456}" // 会代替${code}
// 发送消息
response,err := client.SendSms(request)
if err!=nil{
log.Println("发送消息错误",err)
return
}
fmt.Printf("response is %#v\n",response)
if strings.ToLower(response.Message)=="ok"{
log.Println("发送消息成功")
return
}
}
(有涉及到阿里云利益问题,可以直接说明,删)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2018-11-18 canvas的基本用法