Flask-在成功的json上通过javascript重定向
我使用ajax函数来验证用户登录,并在出现错误时返回json。我想在连续登录时重定向到一个特定的url,但是我只能从我的函数发送json数据(消除了使用url_或重定向的可能性)。那么,如何动态获取根url,以便通过json发送,然后通过javascript重定向。 这是我的路线`Flask-在成功的json上通过javascript重定向,javascript,json,ajax,redirect,flask,Javascript,Json,Ajax,Redirect,Flask,我使用ajax函数来验证用户登录,并在出现错误时返回json。我想在连续登录时重定向到一个特定的url,但是我只能从我的函数发送json数据(消除了使用url_或重定向的可能性)。那么,如何动态获取根url,以便通过json发送,然后通过javascript重定向。 这是我的路线` def logincheck(): uname = request.form['username'] pwd = request.form['password'] if uname and p
def logincheck():
uname = request.form['username']
pwd = request.form['password']
if uname and pwd:
this = userlogin.query.filter_by(username = uname).first()
if this:
if this.password == pwd:
session['myid'] = this.uid
return jsonify(success = ?)
else:
return jsonify(p_error = 'Incorrect Password')
else:
return jsonify(u_error = 'Incorrect Username')
谢谢。要获取javascript中的基本url
var base_url = window.location.origin;
输出:“”
输出:yoururl.com
要重定向javascript中的url
var base_url = window.location.origin;
//重定向到另一页
`window.location = "http://www.yoururl.com"`;
//它的行为与HTTP重定向类似
window.location.replace("http://yoururl.com");
//它的行为类似于单击链接
window.location.href = "http://yoururl.com";
希望这对你有帮助 要获取javascript中的基本url
var base_url = window.location.origin;
输出:“”
输出:yoururl.com
要重定向javascript中的url
var base_url = window.location.origin;
//重定向到另一页
`window.location = "http://www.yoururl.com"`;
//它的行为与HTTP重定向类似
window.location.replace("http://yoururl.com");
//它的行为类似于单击链接
window.location.href = "http://yoururl.com";
希望这对你有帮助 因此,我最终使用location.reload()刷新页面,因为用户已经登录。刷新会自动重定向到所需的页面/类似以下内容
$.ajax({type:“POST”,url:pathname,data:data,success:function(data){if(data.redirect){window.location=data.redirectURL;}}
在ajax调用中,通过flask传递重定向url。在flask中返回jsonify(data=data)
其中数据包含重定向url etc问题仍然是获取根url。由于我在localhost上测试此url,因此url与实际生产服务器不同,因此我最终使用location.reload()刷新页面,因为用户已登录。刷新会自动重定向到所需页面/类似以下内容$.ajax({type:“POST”,url:pathname,data:data,success:function(data){if(data.redirect){window.location=data.redirectURL;}
在ajax调用中,通过flask传递重定向url。在flask中返回jsonify(data=data)
其中数据包含重定向url etc问题仍然是获取根url。由于我在本地主机上测试此url,因此url将不同于实际的生产服务器