哪位大神,短信接口使用的是阿里云短信接口的短信验证平台

不务正业的IT狗,喜欢读书和写作
Java版阿里云通信短信发送API接口实例(新)
阿里云通信(原名阿里大于)的短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码、短信通知等。 完美支撑双11期间2亿用户,发送6亿短信。三网合一专属通道,与工信部携号转网平台实时互联。电信级运维保障,实时监控自动切换,到达率高达99%。
具体阿里大于是什么时候改版到阿里云通信的,不是太清楚,反正以前的短信发送验证码、短信通知的接口最近用不了了(提示的错误见下面的日志),于是只能根据阿里云通信提供的API对接口重新改版。
ERROR com.taobao.api.internal.util.TaobaoLogger: 2017-12-08 12:09:52.181^_^LTAIR3x1VogOJPz5^_^alibaba.aliqin.fc.sms.num.send^_^172.19.38.254^_^Windows Server 2012 R2^_^46^_^http://gw.api.taobao.com/router/rest^_^^_^{"error_response":{"code":11,"msg":"Insufficient isv permissions","sub_code":"isv.permission-api-package-limit","sub_msg":"scope ids is
11863","request_id":"rxn0ipvhba2f"}}
发现错误后的第一反应当然是根据错误信息去找原因:
Insufficient isv permissions:开发者权限不足
isv.permission-api-package-limit:没有和任何访问包关联,建议根据业务规则申请对应的权限
这样的解释似乎并不能帮助我们解决掉问题?
接下来的做法,当然是去看阿里云通信官方给出的API,等待把Java版的短信产品相关的SDK及DEMO程序下载到本地后,我明白了。
aliyun-java-sdk-core-3.3.1.jar
aliyun-java-sdk-dysmsapi-1.0.0.jar
原来调用的jar包
taobao-sdk-java-auto_0-.jar
sdk已经发生了变化,当然旧版的短信接口99%是用不了的。
那么新版的阿里云通信短信发送API该怎么调用呢?
1)创建阿里云账号
2)获取阿里云访问密钥
3)在控制台完成模板与签名的申请,获得调用接口必备的参数
添加模板的时候,请一定要注意,模板的格式是需要一定规则的,后面编写Java代码时需要进行匹配,举例如下:
${code}在后面调用阿里云API的时候要传递。
${username}和${password}同样在后面调用阿里云API的时候要传递。
模板提交后,阿里云通信会在2个小时候内审批,审批完成后就可以看到模板CODE,该参数在后面调用API的时候同样是必须的。
4)下载Java版的SDK
如果你使用的是maven,阿里提供的方式是:
如果你们公司有自己搭建仓库,可以把SDK里面提供的本地jar上传上去即可
或者你走你的本地jar依赖方式
&${project.basedir}/lib/*.jar&
& compile&
如果是常规的Java或者Javaweb项目(直接放在WEB-INF的lib包下),则可以把以下两个jar包引入到工程当中:
aliyun-java-sdk-core-3.3.1.jar
aliyun-java-sdk-dysmsapi-1.0.0.jar
5)编写发送短信的util类
package com.honzh.common.
import java.text.SimpleDateF
import java.util.D
import com.aliyuncs.DefaultAcsC
import com.aliyuncs.IAcsC
import com.aliyuncs.dysmsapi.model.v.QuerySendDetailsR
import com.aliyuncs.dysmsapi.model.v.QuerySendDetailsR
import com.aliyuncs.dysmsapi.model.v.SendSmsR
import com.aliyuncs.dysmsapi.model.v.SendSmsR
import com.aliyuncs.exceptions.ClientE
import com.aliyuncs.profile.DefaultP
import com.aliyuncs.profile.IClientP
import com.honzh.common.sys.OrderE
public class MoblieMessageUtil {
private static final String product = "Dysmsapi";
private static final String domain = "dysmsapi.aliyuncs.com";
private static String accessKeyId = "yourAccessKeyId";
private static String accessKeySecret = "yourAccessKeySecret";
private static String signName = "yourAccessKeySecret";
private static String identifyingTempleteCode = "yourAccessKeySecret";
private static String registTempleteCode = "yourAccessKeySecret";
public static void init(String accessKeyId, String accessKeySecret, String signName, String identifyingTempleteCode,
String registTempleteCode) {
MoblieMessageUtil.accessKeyId = accessKeyId;
MoblieMessageUtil.accessKeySecret = accessKeyS
MoblieMessageUtil.signName = signN
MoblieMessageUtil.identifyingTempleteCode = identifyingTempleteC
MoblieMessageUtil.registTempleteCode = registTempleteC
public static void main(String[] args) {
MoblieMessageUtil.init("key", "keysecret", "沉默王二", "SMS_110",
"SMS_112");
SendSmsResponse response = MoblieMessageUtil.sendIdentifyingCode("手机号", "123456");
System.out.println("短信接口返回的数据----------------");
System.out.println("Code=" + response.getCode());
System.out.println("Message=" + response.getMessage());
System.out.println("RequestId=" + response.getRequestId());
System.out.println("BizId=" + response.getBizId());
response = MoblieMessageUtil.sendNewUserNotice("", "123456", "4512");
System.out.println("短信接口返回的数据----------------");
System.out.println("Code=" + response.getCode());
System.out.println("Message=" + response.getMessage());
System.out.println("RequestId=" + response.getRequestId());
System.out.println("BizId=" + response.getBizId());
public static SendSmsResponse sendSms(String mobile, String templateParam, String templateCode)
throws ClientException {
System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
System.setProperty("sun.net.client.defaultReadTimeout", "10000");
IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
SendSmsRequest request = new SendSmsRequest();
request.setPhoneNumbers(mobile);
request.setSignName(signName);
request.setTemplateCode(templateCode);
request.setTemplateParam(templateParam);
request.setOutId("yourOutId");
SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
return sendSmsR
public static SendSmsResponse sendNewUserNotice(String mobile, String username, String password) {
return sendSms(mobile, "{\"username\":\"" + username + "\", \"password\":\"" + password + "\"}",
registTempleteCode);
} catch (ClientException e) {
throw new OrderException(e.getMessage());
public static SendSmsResponse sendIdentifyingCode(String mobile, String code) {
return sendSms(mobile, "{\"code\":\"" + code + "\"}", identifyingTempleteCode);
} catch (ClientException e) {
throw new OrderException(e.getMessage());
API的调用方式是阿里云提供的,不过这里需要注意的是参数的json字符串一定要正确。
上文中验证码模板的参数格式是{"code":"123456"},尽管123456是数字,也要按照字符串传递。
注册模板的参数格式是“`{“username”:”沉默王二”,”password”:”123456”}。
另外,模板CODE一定要传递正确!一般是以SMS_开头的,例SMS_
我的成功,需要你的一臂之力!
阿里云短信验证服务整套demo教程
Java阿里云通信短信服务发送短信调用
java调用阿里云短信服务器-发送短信
java阿里大于短信(alidayu)sdk用maven管理jar
手把手教你如何使用阿里云短信API
2018版阿里云短信api使用教程,附详细图文和demo,可直接运行
java调用阿里云实现短信推送
新版阿里云短信接口调用
java阿里云短信接口调用
java接入阿里云短信sdk 代码
没有更多推荐了,为什么短信验证码、会员短信都是通过梦网、创蓝253、阿里大于等第三方短信服务平台发送的?_百度知道
为什么短信验证码、会员短信都是通过梦网、创蓝253、阿里大于等第三方短信服务平台发送的?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
zdheyuan知道合伙人
采纳数:52
获赞数:1407
手机验证码需要实时回复,会员短信数量巨大,这两个特点导致了验证码和会员短信都不能由个人来完成,而三大电信运营商不支持定制这些活动/功能,所以短信验证码和会员短信都是委托第三方短信服务平台来发送。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。阿里云短信可以发金融相关短信吗_百度知道
阿里云短信可以发金融相关短信吗
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
知道合伙人
采纳数:2746
获赞数:2508
擅长:暂未定制
可以,如果你的用途是用在自己的产品上,例如给用户发发余额提醒之类的,完全可以,但是如果是商业推广的话发多了可能有问题,不过对于这个你可以通过发一个链接的方式将用户导向你自己的网页进行宣传。
加我q知道合伙人
获赞数:81
擅长:暂未定制
为你推荐:
其他类似问题
您可能关注的内容
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。阿里云短信接口谁用过,求大神们指点【php吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:156,027贴子:
阿里云短信接口谁用过,求大神们指点收藏
现在的情况是,参数都传进去了,在控制器里实例化调用阿里sdk方法的时候返回的为空,在前端点击发送验证码按钮,会出来下图,但是提示成功了,也接不到短信。求大神们指点
你的--域--名-是买--的--万--网-60--元 的-C-O--M-吗?你是不是买的6元的--阿--里--云--空---间--?我自己也像买-一-个-做个--网--站-,求-指教-
什么问题,用过
我是这样认为的 这里的$j 是代表的是 没行的第一个* $i * 2 -1 代表的是每行最后一个 * 不知道我这样理解对不对!
今天没事。弄着玩了下
怎么弄的而给我看看代码
伙计加个好友吧
你这边短信还需要么,我们公司是专门做通讯服务的,我们聊聊呗
你的短信模板是验证码类型的码?你这个看的不是很明白,你模板在控制台有么?
登录百度帐号1249人使用
2682人使用
短信服务是否有获取短信签名和短信模板列表和详情的接口?这样运维人员可以在自己的界面上面直接选择需要发送的模板消息,而不是每次去阿里云的控制台去查找。运维人员只要关注模板的名字,也不需要关心模板code这些技术字段。 ...
2326人使用
我的网站是PHPCMS V9开发的,官方默认的短信功能不好用,阿里云有短信平台,哪位大神能修改V9改成阿里云短信平台啊? ...
1516人使用
2248人使用
核实下您的账户余额是否为0,目前套餐包短信条数有剩余但是需要账户余额为0以上才可以正常调用短信接口。 ...
调用API接口会产生接口调用错误码,常见接口调用错误码显示及修改建议,请参考以下列表:调用接口成功后,运营商异步返回的短信发送状态错误码。请见【短信发送状态回执错误码】
错误码Code
错误提示Message
原因及建议处理方式
  在本篇博客开头呢,先说一下写本篇的博客的原因吧。目前在做一个小项目,要用到在本应用程序内发验证码给其他用户,怎么在应用内发送短信的具体细节想不大起来了,于是就百度了一下,发现也有关于这方面的博客,点进去看了看,个人感到有点小失望,写的太不详细,只是 ...
1241人使用
![image](https://yqfile.alicdn.com/6c9dcdcb5ccca555fa8.png)
设置短信阀值下面的图表 显示已发送6条 可是一直是未到达的状态 手机也收不到验证码 ...
我这里以56短信接口为例!
首先需要到56短信网上去注册个账号,代码中需要用到4个参数:企业ID、用户名、密码、所用平台
在里面充钱配合下面的代码就可以发送短信啦!
&&& public ...
通过第三方接口发送短信验证码/短信通知
& &需求:将首次交付密码为公共默认密码的方式改为点击入职功能,用短信方式发送系统自动生成的八位含数字、大小写字母和特殊符号生成的密码。短信发送服务由云通信http://www ...
共有6488页
你可能感兴趣

我要回帖

更多关于 阿里云短信验证码接口 的文章

 

随机推荐