Foxtable(狐表)用户栏目专家坐堂 → 阿里云短信api遇到的问题


  共有2679人关注过本帖树形打印复制链接

主题:阿里云短信api遇到的问题

帅哥哟,离线,有人找我吗?
sloyy
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2180 积分:13816 威望:0 精华:2 注册:2012/2/25 10:59:00
阿里云短信api遇到的问题  发帖心情 Post By:2021/3/20 12:10:00 [只看该作者]



源代码:

Dim product As String = "Dysmsapi" '无需更改,官方名称
Dim domain As String = "dysmsapi.aliyuncs.com" '无需更改,官方名称
Dim accessId As String = "xxx" '更换为您的AccessKey
Dim accessSecret As String = "xxx" '更换为您的AccessSecret
Dim regionIdForPop As String = "cn-hangzhou" '无需更改,官方名称


Dim profile As Aliyun.Acs.Core.Profile.IClientProfile = Aliyun.Acs.Core.Profile.DefaultProfile.GetProfile(regionIdForPop, accessId, accessSecret)

Aliyun.Acs.Core.Profile.DefaultProfile.AddEndpoint(regionIdForPop, regionIdForPop, product, domain)

Dim acsClient As Aliyun.Acs.Core.IAcsClient = New Aliyun.Acs.Core.DefaultAcsClient(profile)

Dim request As Aliyun.Acs.Dysmsapi.Model.V20170525.SendSmsRequest = New Aliyun.Acs.Dysmsapi.Model.V20170525.SendSmsRequest()

Dim response As Aliyun.Acs.Dysmsapi.Model.V20170525.SendSmsResponse = Nothing


Try
    request.PhoneNumbers = "13827126079"
    request.SignName = "迈宝伦科技" '更换为您备案的短信签名
    request.TemplateCode = "SNS_1234343245" '更换您备案的短信模板
    request.TemplateParam = "{""customer"":""123""}"  '如果您有可替换的标签,可以设置设置json,也可以注释掉
    'request.OutId = "YourID" '这玩意暂时没用
    response = acsClient.GetAcsResponse(request)
    MessageBox.show(response.Message) '这里输出发送结果."OK"就是行了.
Catch ex As Exception
    MessageBox.show("短信代码有问题,请联系技术员")
End Try


我的短信模版有一个 fphm 的参数  ,我写入数据

request.TemplateParam = "{""fphm"":""12345678""}"  

返回错误信息 : 

模板变量缺少对应参数值 


我是哪里写得不对吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107880 积分:548763 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/20 12:17:00 [只看该作者]

可能需要传入不止一个fphm 的参数,比如还有其它customer,xxx等。看官方的开发文档说明

 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2180 积分:13816 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2021/3/20 12:35:00 [只看该作者]

一语惊醒梦中人,查看官方开发文档后才知道,fphm,Signature2个以上参数是这样写的
  request.TemplateParam = "{""fphm"":""12345678"",""Signature"":""eg4HHBe%2BICCNCtCthdpw""}"  '如果您有可替换的标签,可以设置设置json,也可以注释掉
而不是分别写2个 request.TemplateParam
谢谢有点蓝大师,你是最棒的!   
 

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107880 积分:548763 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/20 14:11:00 [只看该作者]

建议使用这种用法生成json字符串:http://www.foxtable.com/mobilehelp/topics/0167.htm

 回到顶部