145 lines
3.9 KiB
Python
145 lines
3.9 KiB
Python
from operator import add
|
|
from flask import jsonify,request,session
|
|
from model import AAA, app,db,User
|
|
from flask_jwt_extended import create_access_token,JWTManager,jwt_required,get_jwt_claims, get_jwt_identity
|
|
import hashlib
|
|
|
|
app.config['JWT_SECRET_KEY'] = 'JWT'
|
|
jwt = JWTManager(app)
|
|
|
|
@app.route("/register",methods=["POST"]) #注册
|
|
def register():
|
|
req_data=request.get_json()
|
|
new_username=req_data.get("username")
|
|
new_password=req_data.get("password")
|
|
new_token = create_access_token(identity=new_username)
|
|
new_user=User.query.filter(User.username==new_username).first()
|
|
|
|
if not all([new_username, new_password]):
|
|
return jsonify({"code":400,"msg":"请将账号密码填写完整"} )
|
|
|
|
if new_user is not None :
|
|
return jsonify({"code":400,"msg":"账号已存在"} )
|
|
|
|
add_user = User(username=new_username,password=new_password,token=new_token)
|
|
db.session.add(add_user)
|
|
db.session.commit()
|
|
return jsonify({
|
|
"code":200,
|
|
"msg":"用户注册成功",
|
|
"token":new_token
|
|
})
|
|
|
|
|
|
|
|
|
|
@app.route("/login",methods=["POST"]) #登录
|
|
def login():
|
|
req_data=request.get_json()
|
|
username=req_data.get("username")
|
|
password=req_data.get("password")
|
|
# password_md5=hashlib.md5(password.encode()).hexdigest()
|
|
user=User.query.filter(User.username==username).first()
|
|
|
|
if not all([username, password]):
|
|
return jsonify({"code":400,"msg":"参数不完整"} )
|
|
|
|
# if user is None or password_md5 != user.password:
|
|
if user is None or password != user.password:
|
|
return jsonify({"code":400,"msg":"账号或密码错误"} )
|
|
|
|
|
|
token = create_access_token(identity=user.username)
|
|
User.query.filter(User.username==username).update({"token":token})
|
|
db.session.commit()
|
|
|
|
return jsonify({
|
|
"code":200,
|
|
"msg": '登录成功',
|
|
"data":{
|
|
"token":token
|
|
}
|
|
})
|
|
|
|
# str(AAA())
|
|
# data = [
|
|
# {
|
|
# "id":1,
|
|
# "web":"xx"
|
|
# }
|
|
# ]
|
|
|
|
# jsonify(data=data)
|
|
|
|
@app.route("/get",methods=["GET"]) #查
|
|
@jwt_required
|
|
def Get():
|
|
get_website=AAA.query.all()
|
|
b=[]
|
|
for i in get_website:
|
|
a=dict()
|
|
a["id"]=i.id
|
|
a["website"]=i.website
|
|
b.append(a)
|
|
|
|
return jsonify(b)
|
|
|
|
|
|
@app.route("/add",methods=["POST"]) #增
|
|
@jwt_required
|
|
def Add():
|
|
try:
|
|
# claims = get_jwt_claims()
|
|
# current_user = get_jwt_identity()
|
|
add_website=request.get_json()
|
|
new_website= add_website.get("website")
|
|
add = AAA(website=new_website)
|
|
db.session.add(add)
|
|
db.session.commit()
|
|
return jsonify({"code":200,"msg":"数据添加成功"} )
|
|
|
|
except Exception as e:
|
|
return jsonify({"code":400,"msg":"格式不正确"} )
|
|
|
|
|
|
|
|
@app.route("/modify",methods=["POST"]) #改
|
|
@jwt_required
|
|
def Modify():
|
|
try:
|
|
get_date=request.get_json()
|
|
modify_id= get_date.get("id")
|
|
modify_website= get_date.get("website")
|
|
id=AAA.query.filter(AAA.id==modify_id).first()
|
|
if id is None :
|
|
return jsonify({"code":400,"msg":"没有这项数据"} )
|
|
AAA.query.filter(AAA.id==modify_id).update({"website":modify_website})
|
|
db.session.commit()
|
|
|
|
return jsonify({"code":200,"msg":"数据修改成功"} )
|
|
except Exception as e:
|
|
return jsonify({"code":400,"msg":"格式不正确"} )
|
|
|
|
|
|
@app.route("/delete",methods=["POST"]) #删
|
|
@jwt_required
|
|
def Delete():
|
|
try:
|
|
get_date=request.get_json()
|
|
delete_id= get_date.get("id")
|
|
id=AAA.query.filter(AAA.id==delete_id).first()
|
|
if id is None :
|
|
return jsonify({"code":400,"msg":"没有这项数据"} )
|
|
AAA.query.filter(AAA.id==delete_id).delete()
|
|
db.session.commit()
|
|
|
|
return jsonify({"code":200,"msg":"数据删除成功"} )
|
|
except Exception as e:
|
|
return jsonify({"code":400,"msg":"格式不正确"} )
|
|
|
|
|
|
|
|
|
|
if __name__=="__main__":
|
|
app.run(host="0.0.0.0")
|
|
# host="0.0.0.0" |