现在用 leancloud 的短信服务举个例子。
leancloud 并没有提供短信发送的 php sdk,
但是我们可以根据官方的 restful api 手册自己做一个 SDK,
其实主要就是请求/验证,两个方法。
至于其他的方法,大家可以自己补充。
leancloud 官方手册的位置https://leancloud.cn/docs/rest_sms_api.html
首先是请求短信验证码的方法:
大家在 leancloud 创建 app 之后,记得打开:启用通用的短信验证码服务(开放 requestSmsCode 和 verifySmsCode 接口) 选项。
下面代码中的 $app_id 与 $app_key 就是从 leancloud 获取的 AppID 与 AppKey。
public function requestSmsCode()
{
$url = 'https://api.leancloud.cn/1.1/requestSmsCode';
$data = '{"mobilePhoneNumber": "要发送的目标电话号码"}';
$content_type = "Content-Type: application/json";
$x_id = "X-LC-Id: {$app_id}";
$x_key = "X-LC-Key: {$app_key}";
$curl_handler = curl_init();
curl_setopt($curl_handler, CURLOPT_URL, $url);
curl_setopt($curl_handler, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handler, CURLOPT_POST, 1);
curl_setopt($curl_handler, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl_handler, CURLOPT_HTTPHEADER, [$content_type, $x_id, $x_key]);
curl_close($curl_handler);
}接下来是验证的方法:获取到的验证码大家自己从 input 里面获取替代。
方法返回的 result 是 bool(true|false),直接用于判断验证是否成功。
public function verifySmsCode()
{
$url = 'https://api.leancloud.cn/1.1/verifySmsCode/获取到的验证码?mobilePhoneNumber=要发送的目标电话号码';
$content_type = "Content-Type: application/json";
$x_id = "X-LC-Id: {$app_id}";
$x_key = "X-LC-Key: {$app_key}";
$curl_handler = curl_init();
curl_setopt($curl_handler, CURLOPT_URL, $url);
curl_setopt($curl_handler, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handler, CURLOPT_POST, 1);
curl_setopt($curl_handler, CURLOPT_HTTPHEADER, [$content_type, $x_id, $x_key]);
$result= curl_exec($curl_handler);
curl_close($curl_handler);
return $result;
}我这算帮 leancloud 做了广告不?可惜没费用啊! 最佳答案