Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 烧瓶Ajax数据错误_Javascript_Jquery_Ajax_Python 3.x_Flask - Fatal编程技术网

Javascript 烧瓶Ajax数据错误

Javascript 烧瓶Ajax数据错误,javascript,jquery,ajax,python-3.x,flask,Javascript,Jquery,Ajax,Python 3.x,Flask,我试图将数据从javascript/ajax(选定的地区和城市信息)发送到flask,然后将处理后的数据返回到javascript。“var数据”在console.log上看起来像{“region1”:“Asia”,“city1”:“Taipei”,“region2”:“南美”}。 我在ajax中遇到错误 javascript: $(function() { $('#button').on('click', function() { var data = {'re

我试图将数据从javascript/ajax(选定的地区和城市信息)发送到flask,然后将处理后的数据返回到javascript。“var数据”在console.log上看起来像{“region1”:“Asia”,“city1”:“Taipei”,“region2”:“南美”}。 我在ajax中遇到错误

javascript:

 $(function() {
      $('#button').on('click', function() {
         var data = {'region1': $('select[name=slct1]').val(),
                    'city1': $('select[name=slct2]').val(),
                    'region2': $('select[name=slct3]').val()};
         console.log(data);
         $.ajax({
            url: '/receive',
            type: 'post',
            dataType: 'json',
            contentType: 'application/json',
            crossDomain: true,
            data: data,
            success: function(data2){
              alert('success');},
            error: function(){alert('failure');}
            });
        });
      });
烧瓶:从数据库中提取城市1的Temp1和其他变量(np数组)

@app.route('/receive', methods=['POST', 'GET'])
def receive():
    if request.method == 'POST':
        data = request.form['data']
        City1 = data['city1']
        Temp1 = some_function(City1) # np array

        return jsonify({'Temp1': list(Temp1)})

我认为Flask中接收到的数据应该如下解析:

if request.method == 'POST':
    data = request.get_data()
    data = json.loads(data)
    City1 = data['city1']

根据JSON标准,数据看起来是正确的。请使用开发人员工具查看浏览器的“网络”选项卡,查看请求是否成功发送到服务器。请观察您的服务器端日志,了解出了什么问题。如果你需要帮助,你应该在你的问题中也包括相关的日志摘录。一个是我需要在发送到js端之前修改数据(var data_JSON=JSON.stringify(data);。第二个是上面建议的。谢谢!