阿里雲短信服務(新版)開發——Thinkphp

1. 安裝:

我是直接下載的 .zip 文件,也可以直接Composer安裝。無論哪種方式,最終會得到如下的文件
在這裏插入圖片描述
把文件重命名爲Aliyun放在tp框架vendor中,並且創建一個Aliyun.php,文件結構如下。
在這裏插入圖片描述

2. 封裝一個簡單的類

Aliyun.php:

<?php
require __DIR__ . '/vendor/autoload.php';
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

class Aliyun
{
    /**
     * 驗證accessKeyId,accessSecret
     */
    public function __construct()
    {
        AlibabaCloud::accessKeyClient('你的accessKeyId', '你的accessSecret')
            ->asDefaultClient();
    }

    /**
     * 短信發送
     * @param     [number]        $PhoneNumbers   [手機號]
     * @param     [string]        $SignName       [短信簽名名稱]
     * @param     [string]        $TemplateCode   [短信模板ID]
     * @param     [json]          $TemplateParam  [模板內容參數] 如{"code":"1111"}
     * @return    [json]          成功返回 {"Message": "OK","RequestId": "A1FA52EF-10D4-432B-8AF3-C87A1F2F1E11","BizId": "636214959618469190^0","Code": "OK"}
     */
    public function send($PhoneNumbers, $SignName, $TemplateCode, $TemplateParam)
    {
        try {
            $result = AlibabaCloud::rpc()
                ->regionId('cn-beijing')
                ->product('Dysmsapi')
                ->version('2017-05-25')
                ->action('SendSms')
                ->method('POST')
                ->options([
                    'query' => [
                        'PhoneNumbers' => $PhoneNumbers,
                        'SignName' => $SignName,
                        'TemplateCode' => $TemplateCode,
                        'TemplateParam' => $TemplateParam,
                    ],
                ])->request();
            //成功返回json
            return $result;
        } catch (ClientException $e) {
            return $e->getErrorMessage();
        } catch (ServerException $e) {
            return $e->getErrorMessage();
        }
    }
}

Api中鏈式操作方法的參數可以參考以下網址
https://help.aliyun.com/document_detail/101414.html?spm=a2c4g.11186623.2.11.2a273e2cUWTzJB

3. 短信簽名和模板的配置
該短信接口無法非常自由的定義短信內容,簽名和模板都需要平臺審覈。
進入阿里雲短信服務控制檯,左側菜單欄中找到國內消息,就可以看到‘簽名管理’和‘模板管理’了。
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章