简单来说,就是我发现我的某一个网页的请求原本是post,突然在某一个瞬间变成了get请求,以至于我再也进不去相关界面。而且问题在于不是所有的界面都是这样,而是只有一个登录界面是这样。
@login.route('/login', methods=['GET', 'POST'])
def loginlogic():
if request.method == 'POST':
username = request.form['username']
password = request.form['userpwd']
result = cursor_login(username)
if result and result[3] == password:
return render_template('invidual.html')
else:
return render_template('1111111.html')
这个是原来的代码。主要是为了实现一个登录的功能。在前端我也有
<form action="/login" method = "post">
感觉很正常啊。但就是不行,进不了相关的界面。
感觉很正常啊。但就是不行,进不了相关的界面。
在关于注册功能中,我也是用的类似的代码,if == ‘POST’,表单也是规定了方法是post,也能正常的进入。但就是只有登录功能代表的这串代码的请求方法变成了get。
后来我勉强算是有解决办法(但是感觉完全不治本)
@login.route('/login', methods=['GET', 'POST']) def loginlogic(): email = request.form['email'] password = request.form['userpwd'] result = cursor_login(email) if result and result[3] == password: return render_template('test.html') else: return render_template('123.html')
@login.route('/test', methods=['GET', 'POST'])
def logintest(): if request.method =='GET': return render_template('login.html') else: return render_template('123.html')
去掉对请求方法的判断,加上一个路由,账户注册的超链接指向test,通过这个路由来跳转html,再开始程序的功能。也能够跑通,对数据库的调用也是正确的。但就是感觉一股异味,非常的愚蠢。路由和html的请求处理都没有问题,我在想是不是某个地方的js出现了问题。但是我看不懂js代码。我就非常的困惑。查看flask日志,返回的都是304。
真是非常奇怪的代码,为什么呢,只有这一个功能的请求出问题。