前市面的短信接口服务有很多家,例如百度云,阿里云,腾讯云,闪速码短信平台
这里我只要介绍和展示的我们商城系统对接短信接口。
主要原因有 ,阿里云的短信签名审核需要提供上线的app链接或者已经备案的网址域名(也就是说需要提供可以查的到的项目) 这个对于学习阶段的我们来说,有一点不友好呀。我使用是闪速码短信平台 接口进行对接我们商城系统。
百度搜索闪速码
注册后 可以有200免费短信 可以测试, 这个大大方便开发人员 开发测试,减少很多等待时间。降低对接短信开发成本。提供SDK 也很方便。
下面 记录一下我的系统 (PHP语言开发的)使用SDK对接
SDK 封装 2个类 Request 和 Client 可以很方便 集成到PHP 各种框架中。调用也很方便
require __DIR__ . '/vendor/autoload.php';
/*这里引用包管理工具 Composer 文件
如服务器未配置,可用引用文件使用
require_once (__DIR__.'/Hwtech/Sms/Request.php');
require_once (__DIR__.'/Hwtech/Sms/Client.php');
*/
use Hwtech\Sms\Client;
use Hwtech\Sms\Request;
$client = new Client();
$client->setAppId('hw_111001'); //开发者ID,在【设置】-【开发设置】中获取
$client->setSecretKey('123456'); //开发者密钥,在【设置】-【开发设置】中获取
$request = new Request();
$request->setMethod('sms.message.send');
$request->setBizContent([
'mobile' => ['18614851111'], //接受号码
'template_id' => 'ST_2020101100000005', //模板id
'type' => 0, //验证码类型为0
'sign' => '短信签名', //这里填写短信签名,不需要填写签名id
'send_time' => '',
'params' => [
'code' => $code
]
]);
list($ret, $errno, $errstr, $et) = $client->execute($request);
var_dump($ret, $errno, $errstr, $et);
要注意是
mobile 参数 是数组方式, 这个千万不好弄错
sign 参数 是 在我们注册系统中 设置的短信签名的内容
短信SDK 很简洁 很容易对接, 节约开发时间。 我对接一个2个小时就 可以投入生产环境使用。这个极大方便我们这些开发人员, 剪切开发工作量。