TP5调用阿里云短信接口实现发送短信功能

工作需要,对接阿里云的短信服务,借此记录一下(网站 www.lelee.top)

主要分为两个部分,一是下载官方的Demo事例,这个不需要多说,自己去下载就行,地址:
https://help.aliyun.com/document_detail/55359.html?spm=a2c4g.11186623.4.3.45ae16e49ejNTe

可以下载轻量版的SDK 注意一下PHP 的版本

第二步就是在文件中引用,把下载的SDK 中的 api-sdk  放在vendor  文件夹下面,可以随意命名

下面就是常规的调用,在common文件中添加方法

use Aliyun\Core\Config;  
use Aliyun\Core\Profile\DefaultProfile;  
use Aliyun\Core\DefaultAcsClient;  
use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest; 
/**
 * 短信发送
 * @param $to    接收人
 * @param $model    短信模板ID
 * @param $code   短信验证码
 * @return json
 * @说明:有优惠,先领卷在购买,不谢!https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ob1nyal1
 */
function send_sms($to, $model, $code){
    require_once '../extend/alisms/vendor/autoload.php';
    Config::load(); //加载区域结点配置  
    $config = '根据你的实际情况读取配置文件或读取数据库,本项目是将配置写入数据库实现';
    $accessKeyId = '你的AccessKeyID';
    $accessKeySecret = '你的AccessKeySecret';
    $templateParam = $code;
    //短信签名  
    $signName = $config['sign_name'];
    //短信模板ID 
    switch($model){
        case 1:
            $templateCode = $config['model_code_rl']; // 注册登录短信验证码模板
        break;
        case 2:
            $templateCode = $config['model_code_reset']; // 重置密码短信验证码模板
        break;
    }
    //短信API产品名(短信产品名固定,无需修改)  
    $product = "Dysmsapi";  
    //短信API产品域名(接口地址固定,无需修改)  
    $domain = "dysmsapi.aliyuncs.com";  
    //暂时不支持多Region(目前仅支持cn-hangzhou请勿修改)  
    $region = "cn-hangzhou";
    // 初始化用户Profile实例  
    $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);  
    // 增加服务结点  
    DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);  
    // 初始化AcsClient用于发起请求  
    $acsClient= new DefaultAcsClient($profile);  
    // 初始化SendSmsRequest实例用于设置发送短信的参数  
    $request = new SendSmsRequest();  
    // 必填,设置雉短信接收号码  
    $request->setPhoneNumbers($to);  
    // 必填,设置签名名称  
    $request->setSignName($signName);  
    // 必填,设置模板CODE  
    $request->setTemplateCode($templateCode);  
    // 可选,设置模板参数
    if($templateParam) {
        $request->setTemplateParam(json_encode($templateParam));
    }
    //发起访问请求  
    $acsResponse = $acsClient->getAcsResponse($request);   
    //返回请求结果  
    $result = json_decode(json_encode($acsResponse),true); 
    // 具体返回值参考文档:https://help.aliyun.com/document_detail/55451.html?spm=a2c4g.11186623.6.563.YSe8FK
    return $result; 
}

然后在需要的地方进行调用

$send = send_sms($sender,1,$code);
参数(手机号,模板ID,验证码);

需要注意的是首先要注册阿里云短信服务、获取AccessKeyId  和 AccessKeySecret

https://dysms.console.aliyun.com/dysms.htm#/overview

TP5调用阿里云短信接口实现发送短信功能相关推荐

  1. Java调用阿里云短信接口,发送短信

    Java调用阿里云短信接口,发送短信 1.短信服务这个很简单,只需要知道accessKeyId(AK).accessKeySecret(SK).短信签名.短信模板即可. 2.域名和产品名称是固定的,使 ...

  2. 调用阿里云人脸识别接口示例

    下面我为大家展示一下我调用阿里云人脸识别接口的示例 首先说下开发环境,springboot 开发的 org.apache.commons.codec.binary.Base64; 这个主要是用来进行b ...

  3. java调用短信接口实现发送短信

    java调用短信接口实现发送短信 1.下载接口文件 2.打开java文件夹 2.1获取jar包依赖 2.2获取代码模板 3.创建项目 3.1打开eclipse软件,创建一个动态的web项目 3.2导入 ...

  4. python发送短信接口_python发送短信和发送邮件

    先注册好 发短信脚本内容 #接口类型:互亿无线触发短信接口,支持发送验证码短信.订单通知短信等. #账户注册:请通过该地址开通账户http://sms.ihuyi.com/register.html ...

  5. 后端调用阿里云快递API接口--后端部分

    这是小练手,调用接口要买,一般都会有一次机会0元100次 为了节约调用接口的次数 后端部分:(快递接口不同的话会出错) 工具类 1.HttpUtils import org.apache.common ...

  6. 调用阿里云接口实现短信消息的发送源码——CSDN博客

    在调用阿里云接口之前首先需要购买接口,获得accessKeySecret,然后使用下列代码就可以直接调用了!! /** * @Title: TestPhoneVerification.java * @ ...

  7. springboot项目调用阿里云短信接口(包括短信上行)

    最近一直在做项目,很久没有写过博客了,最近做的一个项目中遇到了一个业务需要用到短信功能包括了发送短信和短信回复之后要收到回复内容,阿里云短信服务是一个非常好的平台,里面提供了多种短信接口可以供我们使用 ...

  8. java调用阿里云api发送短信验证服务

    1.先在maven构建需要的jar包 <dependency><groupId>com.aliyun</groupId><artifactId>aliy ...

  9. nodejs 调用阿里云短信

    最近公司使用nodejs调用阿里云短信接口发送短信,网上找了很多示例都不行,给的那些都不能正常使用.下面给出我调用成功的示例. 阿里云短信调用实质上就是构建一个http请求可以是post也可以是get ...

最新文章

  1. 30段极简Python代码:这些小技巧你都Get了么
  2. java metapojo_JavaBean,POJO,VO,DTO的区别和联系
  3. python学习之函数的参数类型
  4. Rochambeau POJ - 2912 (枚举和加权并查集+路径压缩)找唯一裁判
  5. Python自定义时间间隔访问网页
  6. Redis:缓存问题之数据不一致(更新数据库时 主动更新)
  7. 帷幕的帷是什么意思_公务员最低服务年限是什么意思,被录用后辞职,还能考公务员吗...
  8. SQL Server补丁版本的检查
  9. iOS之UI--CAGradientLayer
  10. Delphi2010启动报错cannot create file C:Users\ADMINI~1\AppDat...\EditorLineEnds.ttr
  11. linux startx无效_LINUX startx命令-用来启动X Window
  12. 小程序高级电商前端第1周走进Web全栈工程师<二>
  13. Vue项目引入icon图标的两种方法
  14. PHPcurl请求很慢解决办法
  15. 软件测试工程师笔试题
  16. NOKOV度量动作捕捉用于多智能体协同系统等效验证实验
  17. 安徽科技学院 信网学院网络文化节 刘洪江
  18. 【Python】90后的青春,定格在被淡忘的QQ空间里
  19. Servlet从本机读取一个图片,并显示在html页面
  20. 华为思科华三锐捷各种数通资料整理

热门文章

  1. 数学分析教程史济怀练习9.4
  2. mock格式数据整理
  3. 蓝桥杯刷题冲刺 | 倒计时26天
  4. UG11经典工具条设置
  5. 前端解决表情符号乱码问题(前端处理表情符号编码)@令狐张豪
  6. Linux 2.6.19.x 内核编译配置选项简介(内核裁剪)
  7. C语言~宏操作大全(宏定义、内置宏、__FILE__、__LINE__、##用法)
  8. 超越货币、经济和市场的公正应用
  9. spotify 缓存_如何在Spotify中获得最佳音质
  10. VMD结合ISSA优化LSSVM功率预测