首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >个人项目接短信验证码,从调研到上线只花了半小时

个人项目接短信验证码,从调研到上线只花了半小时

原创
作者头像
外滩首席运维
发布2026-07-20 15:13:24
发布2026-07-20 15:13:24
380
举报
文章被收录于专栏:Spug运维自动化Spug运维自动化

最近业余时间在做一个小工具站,注册登录一直用的邮箱验证码。后来发现不少用户反馈说没收到邮件(进垃圾箱了),干脆加一个短信验证码作为备选。

本来以为很快能搞定,结果光调研方案就花了不少时间。

调研了一圈的感受

先看了几个主流云厂商的短信服务。功能确实全面,支持验证码、通知、营销各种场景。但接入流程对个人开发者不太友好:

第一步就是企业实名认证。我一个个人项目,没有营业执照,直接被挡住了。有的平台虽然支持个人认证,但签名和模板审核要求写得很严,来来回回改了几次还是没过。

时间成本是最大的问题。光审核这一步就可能消耗一两天,对于一个周末项目来说太重了。

换了个思路

后来在论坛上看到一个轻量方案,试了一下发现特别适合个人项目:

不需要企业认证,注册就能用。没有签名模板审核流程,注册后直接拿到调用凭证。只做验证码这一个场景,接口极简。

调用方式就是一个标准的 POST 请求:

代码语言:bash
复制
curl -d '{"code": "153146", "to": "186xxxx9898"}' \
  https://push.spug.cc/sms/你的模板编码

模板编码 在后台登录后就能拿到,它同时也是调用凭证,不需要额外配 AppKey 或算签名。

几个实际接入中的细节

返回值的含义: 接口返回 {"code":200,"msg":"请求成功","request_id":"..."} 时,code=200 只代表请求入库了,短信是异步发送的。如果要确认是否真的送达了,需要拿 request_id 去发送日志查。

安全配置: 模板编码不能暴露到前端,必须从服务端调用。后台支持 IP 白名单,限制只有你服务器的 IP 才能调。如果编码不小心泄露了,可以在后台一键重置。

费用: ¥0.05 一条,按条计费。新注册用户送 2 条用来测试。我的小工具站日活也就几十人,一个月短信费用大概在十几块钱。

只有验证码: 目前只支持验证码场景,没有通知类或营销类短信。如果后续需要这些,还是得接大厂的服务。

后端接入代码参考

Python Flask 为例:

代码语言:python
复制
import requests
import random
from flask import Flask, request, jsonify

app = Flask(__name__)
code_cache = {}  # 生产环境用 Redis

@app.route('/api/send-code', methods=['POST'])
def send_code():
    phone = request.json.get('phone')
    code = str(random.randint(100000, 999999))
    
    resp = requests.post(
        'https://push.spug.cc/sms/你的模板编码',
        json={'code': code, 'to': phone}
    )
    
    if resp.json()['code'] == 200:
        code_cache[phone] = code
        return jsonify({'success': True})
    return jsonify({'success': False}), 500

Spring Boot 或 Go 的接法也一样,就是一个 HTTP POST。

总结

个人项目接短信验证码,核心需求是门槛低、接入快、成本可控。大厂方案功能全但流程太重。这个方案的优势就是简单——没有认证审核的前置流程,一个 POST 就能发。适合 side project、MVP 验证、个人工具站这类场景。

等项目规模起来,需要通知短信或更高级的能力时,再切到大厂平台也不麻烦。


我用的短信接口是 sms.spug.cc,有兴趣的可以试试。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 调研了一圈的感受
  • 换了个思路
  • 几个实际接入中的细节
  • 后端接入代码参考
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档