发布请求不会执行

时间:2018-03-01 14:07:59

标签: javascript python

有两个类似的POST请求。第一个工作正常,第二个遇到问题。

第一次请求:

if(document.querySelector('li.logout')){
    document.querySelector('li.logout').onclick = function(){
        alert('ok');
        var form =  document.querySelector('main > form');
         form.method = 'post';
         form.action = '/logout';
         form.submit();
}

Python函数

@app.route('/logout', methods=['POST'])
def logout():
    login_status = logout_user()
    if login_status:
        trigger_logged_out()
        jsonify({'result': True})

        return redirect('/')
    return jsonify({'result': False})

第二次请求:

if(document.getElementById('comeback_to_personal_account')){

    document.getElementById('comeback_to_personal_account').onclick = function(){  
        var form =  document.querySelector('main > form');
        alert('ok');
        form.method = 'post';
        form.action = '/comeback_to_personal_account';
        form.submit();
    }
}

Python函数:

@app.route('/comeback_to_personal_account', methods=['POST'])
def comeback_to_personal_account():
    if current_user.is_authenticated:
        data = get_default_user_data(current_user.get_id())
        return render_sidebar_template("personal_account.html", data=data)

在第二个请求中只执行警报,但是python函数本身 - 没有。我无法理解这里的问题.. 这两个案例是sme,为什么其中一个不能正常工作?

1 个答案:

答案 0 :(得分:0)

我知道这真的很老了,但我想也许 python 代码没有执行的原因不是函数,而是函数中的 if 命令。也许值 current_user.is_authenticated 只是 falsey。因为我看不出为什么问题应该出在 javaScript 中。