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, }