Я использую колбу для создания API, но сеанс в запросах НЕТ, когда я запускаю это из HTML-файлов и отправляю данные с помощью jquery. Когда я отправляю с почтальоном, API работает нормально. Я использую метод first / signup и after / map в этом нет. Можешь мне помочь? Есть ли у вас идеи
import pymysql
from pymysql import install_as_MySQLdb
from flask import Flask, request, jsonify, session, g
from flask_session import Session
from flask_cors import CORS, cross_origin
app = Flask(__name__)
app.secret_key = b'_5#y2L"F4Q8z\n\xec]/'
app.config['SESSION_TYPE'] = 'filesystem'
cors = CORS(app,allow_headers='Content-Type')
app.config['PROPAGATE_EXCEPTIONS'] = False
Session(app)
db = pymysql.connect("localhost", "root", "", "thesis")
@app.route('/signUp', methods=['GET','POST'])
def signUp():
#session.pop('userId', None)
data = request.get_json()
print(data)
cursor = db.cursor()
email = data['email']
password = data['pass']
fname=data['firstName']
lname=data['lastName']
cid=data['type']
points="0"
print(email)
print(password)
query = "SELECT * FROM users WHERE email=%s;"
cursor.execute(query, email)
rows = cursor.fetchall()
print(len(rows))
# print(rows[0])
if len(rows) == 0:
query = "INSERT INTO users(email,password,fname,lname,cid,points)VALUES(%s,%s,%s,%s,%s,%s);"
cursor.execute(query, (email,password,fname,lname,int(cid),int(points)))
db.commit()
query = "SELECT * FROM users WHERE email=%s;"
a=cursor.execute(query, email)
print(a)
rows = cursor.fetchall()
print(rows[0])
if len(rows) == 1:
for results in rows:
session['userId']=str(results[0])
print(session['userId'])
return jsonify(fname=fname, lname=lname,cid=cid)
else:
return jsonify(fname="", lname="")
else:
return jsonify(fname="", lname="")
@app.route('/map', methods=['POST','GET'])
@cross_origin(origin='*',headers=['Content-Type','Authorization'])
def map():
print(session.get('userId'))
data = request.get_json()
print(data)
cursor = db.cursor()
lat= data['lat']
lon = data['lon']
query = "UPDATE users SET lon=%s, lat=%s WHERE uid=%s;"
cursor.execute(query,(lon,lat,session.get('userId')))
db.commit()
return "hello"
if __name__ == "__main__":
app.run(debug=True)