Thinkphp3.2对接阿里短信服务接口

浏览:3542 发布日期:2017/08/16 分类:技术分享 关键字: 阿里 短信验证码
在Application\Common\Common\function.php中添加如下代码:function sendSms($phone,$code){
  Vendor('Alisms.Core.Config');
  //use Aliyun\Core\Profile\DefaultProfile;
  Vendor('Alisms.Core.Profile.DefaultProfile');
  //use Aliyun\Core\DefaultAcsClient;
  Vendor('Alisms.Core.DefaultAcsClient');
  //use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest;
  Vendor('Alisms.Api.Sms.Request.V20170525.SendSmsRequest');
  //use Aliyun\Api\Sms\Request\V20170525\QuerySendDetailsRequest;
  Vendor('Alisms.Api.Sms.Request.V20170525.QuerySendDetailsRequest');

  // 加载区域结点配置
  \Aliyun\Core\Config::load();

  // 初始化用户Profile实例
  $profile = \Aliyun\Core\Profile\DefaultProfile::getProfile(C('ALI_SMS.REGION'), C('ALI_SMS.KEY_ID'), C('ALI_SMS.KEY_SECRET'));

  // 增加服务结点
  \Aliyun\Core\Profile\DefaultProfile::addEndpoint(C('ALI_SMS.END_POINT_NAME'), C('ALI_SMS.REGION'), C('ALI_SMS.PRODUCT'), C('ALI_SMS.DOMAIN'));

  // 初始化AcsClient用于发起请求
  $acsClient = new \Aliyun\Core\DefaultAcsClient($profile);

  // 初始化SendSmsRequest实例用于设置发送短信的参数
  $request = new \Aliyun\Api\Sms\Request\V20170525\SendSmsRequest();

  // 必填,设置雉短信接收号码
  $request->setPhoneNumbers($phone);

  // 必填,设置签名名称
  $request->setSignName('老陈的博客');

  // 必填,设置模板CODE
  $request->setTemplateCode('SMS_84150026');

  $params = array(
    'code' => $code
  );
  // 可选,设置模板参数
  $request->setTemplateParam(json_encode($params));

  // 可选,设置流水号
  //if($outId) {
  //    $request->setOutId($outId);
  //}

  // 发起访问请求
  $acsResponse = $acsClient->getAcsResponse($request);

  // 打印请求结果
  // var_dump($acsResponse);

  return $acsResponse;
}
在Application\Common\Conf\config.php中添加如下配置:'ALI_SMS' => array(
    'PRODUCT' => 'Dysmsapi',
    'DOMAIN' => 'dysmsapi.aliyuncs.com',
    'REGION' => 'cn-hangzhou',
    'END_POINT_NAME' => 'cn-hangzhou',
    'KEY_ID' => '你的KEY_ID',
    'KEY_SECRET' => '你的KEY_SECRET'
  ),
将附件中的文件解压并放到ThinkPHP\Library\Vendor下,完成。

附件 Alisms.zip ( 22.33 KB 下载:291 次 )

最佳答案
评论( 相关
后面还有条评论,点击查看>>