laf 是什么
laf 是开源的云开发平台,提供云函数、云数据库、云存储等开箱即用的应用资源。让开发者专注于业务开发,无需折腾服务器,快速释放创意。
为什么使用laf
laf作为开源的云开发平台,不再拥有繁琐的步骤,可以做到自己的创意、想法即写即用,并且发布之后大家都可以使用。让前端开发者们秒变全栈开发者,成为大前端;后端开发者解放自己,提升效率。
手把手带你体验用户登录
首先,来到laf,点击 立即开发
手机号登录后,点击 新建应用
项目名称就叫 user-name。点击 立即创建
点击 开发
来到此页面,我们可以看到这是laf提供给我们的云函数、云数据库、云存储
接下来我们点击上图右上角的 + 添加函数。函数叫做:register。勾选POST即可。post的语义就是添加,这里我们是要往用户数据里添加一个用户,所以只要勾选POST。
来到右边Body下,我们需要传入一些数据
我把接下来要用的代码贴在下方,大家可以直接使用
javascript
import cloud from '@lafjs/cloud'
//node 内置的crypto加密模块
import { createHash } from 'crypto'
export default async function (ctx: FunctionContext) {
//拿到请求体里面的username,password? http? req
const { username, password } = ctx.body;
//永远不要相信用户
//正则表达式 小写,大写字母和0-9。3到16位
if (!/^[a-zA-Z0-9]{3,16}$/.test(username)) return {
error: "invalid username"
}
if (!/^[a-zA-Z0-9]{3,16}$/.test(password)) return {
error: "invalid password"
}
console.log(
createHash("sha256").update(password).digest("hex")
)
const db = cloud.database();
//用户名是否存在 ?count
const exists = await db.collection("users")
.where({ username:username})
.count();
// console.log(exists)
if(exists.total>0)
return {error:"username already existed"}
//用户的明文密码不能存 单向加密,比对加密过后的
const { id } = await db.collection("users").add({
username: username,
password:
createHash("sha256").update(password).digest("hex")
})
return { data: id };
}
点击运行后,来到数据库,我们便得到了数据。
这里我们是对未发布的函数进行了运行调试,带大家体验一下laf的使用感觉,大家如果想发布自己的云函数,可以先行前往laf云开发的开发指南中学习如何发布以及调用,或者等待作者后续的讲解哦。
注意
laf刚开始会送大家10元,用作体验,大家在退出前一定要前往关闭项目,不然会一直扣钱,影响后续使用。