I\'m having trouble getting data POSTed from jquery ajax.
$(\'#clickme\').click( function() {
var data = save_input(); // data
data[\'_sid\'] = $sur
As per your example you are not sending a key value pair but rather assigning a JSON string to the jQuery data option. As mentioned in the comments you have to stringify your JSON, create an object with a key (which will be used to access the JSON string from flask) and then assign it to the jQuery data key.
$.ajax({
type : "POST",
url : "{{ url_for('mod.load_ajax') }}",
data: {json_str: JSON.stringify(data)},
contentType: 'application/json;charset=UTF-8',
success: function(result) {
console.log(result);
}
});
@mod.route('/load_ajax', methods=["GET", "POST"])
def load_ajax():
if request.method == "POST":
# load _sid and _uip from posted JSON and save other data
# but request.form is empty.
# >>> request.form
# ImmutableMultiDict([])
return str(request.form['json_str']
)