【问题标题】:Flask - Passing parameters to a JQuery $.getJSON callbackFlask - 将参数传递给 JQuery $.getJSON 回调
【发布时间】:2016-11-01 22:18:06
【问题描述】:

我正在尝试将字符串从我的 JQuery $.getJSON 传递给 python 回调函数。但是,该值永远不会到达回调。在这件事上我不清楚文档..所以我已经从其他 StackOverflow 问题中发现了我认为的解决方案。

没有被传回的变量是 que_token(见下面的代码)。否则,此过程通过其间隔循环成功运行,其中 python 方法中的变量进入 JQuery ..

<script type=text/javascript>
var interval = setInterval(
  function()
  {
    $.getJSON('/_update_alert',  { que_token: "Passing as None" }, function(data) {
      $("#alert-msg").text(data.result.alert_msg);
      $("#alert-type").attr("class", data.result.alert_type)
        var stopSession = data.result.End
        document.getElementById("log").innerHTML = document.getElementById("log").innerHTML +
            data.result.message_log + "\n"
        if (data.result.End == "True") {
            clearInterval(interval);
    }

    });
    return false;
  },
  2000);
</script>

@app.route('/_update_alert/<que_token>')
@login_required
def update_alert(que_token=None):
    if que_token is None:
        # que_token should not be None - ERROR
        que_token = session['que_token']
    alert_data = {}
    .....
    return jsonify(result=alert_data)

python 跟踪显示值 que_token 正在返回......但我的 python 函数“update_alert”没有拾取它。

127.0.0.1 -[01/Nov/2016 14:58:02] "GET /_update_alert?que_token=Passing+as+None HTTP/1.1" 200 -

有什么想法吗?

【问题讨论】:

    标签: jquery python-3.x flask


    【解决方案1】:

    在我的 python 函数 update_alert() 中使用烧瓶 request.args.get('que_token', '') 可以解决这个问题。但这并不像从函数 update_alert 传递的参数中提取 que_token 那样直接。

    所以我的问题的一个解决方案是:

    @app.route('/_update_alert')
    @login_required
    def update_alert():
        que_token = request.args.get('que_token', '')
        .....
        alert_data = {}
        .....
        return jsonify(result=alert_data)
    

    除非有人站出来解释为什么我不能使用原始方法(通过获取请求烧瓶参数),否则我会使用这个作为我的答案。

    【讨论】:

    • 点赞!您不能使用 request.get_json() 获取您的案例中的数据吗
    猜你喜欢
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    • 2015-11-11
    • 2011-06-29
    • 2011-02-02
    • 2016-12-09
    • 2012-01-04
    相关资源
    最近更新 更多