第三方API
我们使用第三方,获取一些开发者信息,ACCOUNT SID、AUTH TOKEN、AppID、Rest URL,后面调用接口的时候会用到。查阅第三方官方文档,把发送短信的接口拿过来,接口,因为是第三方库,我们把拿到的接口文件放在lib/yuntongxun下。这里的第三方指代的是云。通。讯,哎呀,写上去说我打广告~要是给我广告费就好了。
Tips:这些第三方SDK一定要自己去仔细阅读官网上给的文档啊!不仅能够get到解决一个问题的优质解决思路,而且能提升代码阅读能力。
添加配置信息
Redis
因为短信验证码我们使用redis,所以要先配置redis。我们设置不同作用的变量存储在不同的数据库分库中,可以看到每个LOCATION后面都有数据库分库ID。使用django_redis中的get_redis_connection方法,将CACHES中的键作为参数传入,就可以获得一个数据库分库的连接对象实例,从而通过python对redis进行操作了。
# 设置redis缓存
CACHES = {
# 默认缓存
"default": {
"BACKEND": "django_redis.cache.RedisCache",
# 项目上线时,需要调整这里的路径
"LOCATION": "redis://127.0.0.1:6379/0",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
},
# 提供给xadmin或者admin的session存储
"session": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
},
# 提供存储短信验证码
"sms_code":{
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/2",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
}
}
# 设置xadmin用户登录时,登录信息session保存到redis
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "sessio