【问题标题】:getting jquery post data null inside python flask在python烧瓶中获取jquery post data null
【发布时间】:2013-07-18 14:55:17
【问题描述】:

jquery ajax 调用

api_key=$('#acesskey').val();
    secret_key=$('#sacesskey').val();
    provider_name = $('#cname').val();
    $.ajax({
        type: "POST",
        data: {api_key:api_key,secret_key:secret_key,provider_name:provider_name},
        url: $SCRIPT_ROOT + "/login",
            contentType: "application/json; charset=utf-8",
            success: function(data) {
            alert(data.status);
            if(data.status == "True")
            {
                custom_ready();         
            }
        }
    });

python烧瓶代码

provider_name=request.args.get('provider_name')
api_key=request.args.get('api_key')
secret_key=request.args.get('secret_key')
print provider_name
print api_key
print secret_key

输出



【问题讨论】:

    标签: jquery python flask


    【解决方案1】:

    request.args 包含查询字符串参数(如/foo?bar=42 中的bar)。您正在执行 POST 请求并希望查看 request.form

    请看这里:http://flask.pocoo.org/docs/quickstart/#the-request-object

    【讨论】:

    • 好的,那么我需要在 ajax 调用中进行哪些更改?我根据说明更改了 python 文件,但仍然无法正常工作.. 状态代码 400 所以我想我也需要更改 ajax 调用.. 你能给我一个简单的例子吗?
    • 发布您应该处理此请求的整个视图函数。使用debug=True 运行开发服务器。如果有的话,发布完整的回溯。
    【解决方案2】:

    ajax调用代码

    $.ajax({
        url: '/login',
        type: 'POST',
        data: {akey:akey,sakey:sakey,pname:pname},
        success: function(response){
            alert(response.status);
        }
    });
    

    HTML 表单

    <form action="" method="POST">
    </form>
    

    Python 代码

    akey = request.form['akey']
    sakey = request.form['sakey']
    pname = request.form['pname']
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-16
      • 1970-01-01
      • 2021-08-21
      相关资源
      最近更新 更多