环境准备:
- Node
- 聚合数据API
- VSCode
- POSTman(调试接口)
1.聚合数据API:
注册登录
提交审核:
等待审核完成后就可以正常使用模板id了。
当然,官网提供了购买短信:
https://www.juhe.cn/docs/api/id/54
2.搭建服务环境:[以node为例,python,java都可以]
安装如下模块:
https://www.npmjs.com/ 这个官网可以查看模块具体的使用方法。
cnpm install express body-parser request querystring --save
cnpm install nodemon -g //这个可以帮助我们实时的去检测代码的改变。
或者用live-server:cnpm install live-server -g
在index.js中,
const express = require('express');
// 这个是接收前端传递过来的数据的,koa2也用它做中间件
const bodyParser = require('body-parser');
const request = require('request');//后端也要请求接口
const querystring = require('querystring');
const app = express();
//要拿到body-parser的东西(中间件)
// parse application/json
app.use(bodyParser.json());
app.get("/",(req,res)=>{
res.send('hello world');
});
//设置端口:如果环境设置了端口就用自己环境设置的,否则就用3000端口
const port = process.env.PORT || 3000;
app.listen(port,()=>{
console.log(`服务器正在运行在${port}端口`);
});
然后在终端输入nodemon,如果没装nodemon就输入node index.js。
基本的服务器环境就部署好了。
3.获取短信验证码:
把聚合网的代码粘过来,修改一下在上面的基础上:
这3个字段的值是前端postman传递过来的。
然后send一下:
可以看出,打印出json。而不是走的“出现异常”.说明我们的key有问题,之前说过,key必须要审核。【审核时间说不定】
假设打印的是成功的json,会给你的手机发送一条短信[包含随机码]
//服务端代码:
const express = require('express');
// 这个是接收前端传递过来的数据的,koa2也用它做中间件
const bodyParser = require('body-parser');
const request = require('request');//后端也要请求接口
const querystring = require('querystring');
const app = express();
//要拿到body-parser的东西(中间件)
// parse application/json
app.use(bodyParser.json());
app.post("/sms_send",(req,res)=>{
//这个phone还没有,用postman传递过来
// console.log(req.body.phone);
let random_code = (('000000'+Math.floor(Math.random()*999999)).slice(-6));//随机码6位
var queryData = querystring.stringify({
"mobile": req.body.phone, // 接受短信的用户手机号码
"tpl_id": req.body.tpl_id, // 您申请的短信模板ID,根据实际情况修改
"tpl_value": `#code#=${random_code}`, // 您设置的模板变量,根据实际情况修改
"key": req.body.key, // 应用APPKEY(应用详细页查询)
});
var queryUrl = 'http://v.juhe.cn/sms/send?'+queryData;
request(queryUrl, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // 打印接口返回内容
var jsonObj = JSON.parse(body); // 解析接口返回的JSON内容
// console.log(jsonObj)
res.json(jsonObj);//将json返回过去。使用调试工具获取到对应的内容。
} else {
console.log('请求异常');
}
})
});
//设置端口:如果环境设置了端口就用自己环境设置的,否则就用3000端口
const port = process.env.PORT || 3000;
app.listen(port,()=>{
console.log(`服务器正在运行在${port}端口`);
});
这下可以开心的测试了,也可以通过官网的在线测试工具进行测试