82 lines
2.1 KiB
JavaScript
82 lines
2.1 KiB
JavaScript
const fs = require("fs")
|
||
const path = require("path")
|
||
const jwt = require('jsonwebtoken')
|
||
|
||
function gettoken(info){
|
||
return jwt.sign(info, "gjhkhnjweuyujhgjh", { expiresIn: '2h' })
|
||
}
|
||
|
||
const index = async (ctx,next)=>{
|
||
ctx.body = "hello"
|
||
}
|
||
|
||
const sign = async (ctx,next)=>{
|
||
const {phone,pwd} = ctx.request.body
|
||
ctx.body = await dbs.add("user",{
|
||
phone,
|
||
pwd
|
||
})
|
||
}
|
||
|
||
const login = async (ctx,next)=>{
|
||
const {phone,pwd} = ctx.request.body
|
||
const res = await dbs.find("user",{phone,pwd})
|
||
if(res.data.length == 0){
|
||
ctx.body = JSON.stringify({
|
||
code:1,
|
||
data:"没有此用户或用户名密码错误"
|
||
})
|
||
}else{
|
||
const token = gettoken({phone,pwd})
|
||
ctx.body = JSON.stringify({
|
||
code:0,
|
||
data: token
|
||
})
|
||
}
|
||
}
|
||
|
||
const addlist = async (ctx,next)=>{
|
||
const {phone,name,addres,sex,birthday,money1,money2,desc,images} = ctx.request.body
|
||
ctx.body = await dbs.add("list",{phone,name,addres,sex,birthday,money1,money2,desc,images})
|
||
}
|
||
|
||
const upload = async (ctx,next)=>{
|
||
const file = ctx.request.files.file
|
||
// console.log(file)
|
||
const reader = fs.createReadStream(file.path)
|
||
// 创建写入流
|
||
// 3. 指定图片路径文件名(即上传图片存储目录)
|
||
const stream = fs.createWriteStream(path.join('images', file.name))
|
||
// 用管道将读出流 "倒给" 输入流
|
||
reader.pipe(stream)
|
||
// 4.打印上传文件在服器上存储的相对路径
|
||
console.log('uploading %s -> %s', file.name, stream.path)
|
||
// 5.重定向到基于根目录下的静态资源web访问路径,展示图片
|
||
ctx.body = {
|
||
code:0,
|
||
path : stream.path
|
||
}
|
||
}
|
||
|
||
const getlist = async (ctx,next)=>{
|
||
ctx.body = await dbs.find("list")
|
||
}
|
||
|
||
const getinfo = async (ctx,next)=>{
|
||
let { num_key } = ctx.query
|
||
console.log(num_key)
|
||
num_key = parseInt(num_key)
|
||
ctx.body = await dbs.find("list",{
|
||
num_key
|
||
})
|
||
}
|
||
|
||
module.exports = {
|
||
"GET /":index,
|
||
"POST /sign": sign,
|
||
"POST /login": login,
|
||
"POST /addlist": addlist,
|
||
"POST /upload": upload,
|
||
"GET /getlist": getlist,
|
||
"GET /getinfo": getinfo,
|
||
} |