如何通过API发送自定义短信,调用接口时追加OTP验证提示内容?
解决方案
你目前的参数配置中msg字段仅传入了$otp变量,所以最终发送的短信只有验证码内容,按以下步骤修改即可:
- 先将固定提示文本和OTP拼接为完整的短信内容
- 对拼接后的内容做URL编码,避免空格、特殊字符导致传参解析错误
- 将编码后的完整内容赋值给
msg参数
修改后的配置示例如下:
// 构造完整短信内容 $full_msg = "Please use " . $otp . " as otp to verify in Food App"; // URL编码处理,避免传参异常 $encoded_msg = urlencode($full_msg); // 替换原有cURL配置的URL部分 CURLOPT_URL => "https://sms.webpal.com.np/base/smsapi/index.php?key=".$config['authkey']."&campaign=4498&routeid=22&type=text&contacts=".$receiver."&senderid=WebPal&msg=".$encoded_msg,
注意事项
- 如果接口有单条短信字数限制,需要确认拼接后的内容长度未超出上限,避免被拆分多条发送
- 不要省略URL编码步骤,否则内容中的空格会被识别为URL参数分隔符,导致内容截断或者接口报错
内容的提问来源于stack exchange,提问作者WebPal
相关产品推荐
相关产品推荐

