Passing Javascript Array to Flask

I have a function in a bulb called an array that takes a list and prints the elements in a list:

def array(list): string = "" for x in list: string+= x return string 

On the client side, I want to pass into a javascript array named str in this array. How can I do it? Here is what I have right now, but Flask is not reading the added variable. Any ideas?

 for (var i = 0; i < response.data.length; i++) { console.log(i); // str = str + "<br/><b>Pic</b> : <img src='"+ response.data[i].picture +"'/>"; str[i] = response.data[i].picture; } window.location = "{{ url_for('array', str=list ) }}"; 
+4
source share
1 answer

A flag has a built-in object called a query. The request has a multitasking argument args.

You can use request.args.get('key') to get the value of the query string.

 from flask import request @app.route('/example') def example(): # here we want to get the value of the key (ie ?key=value) value = request.args.get('key') 

Of course, this requires a request for receipt (if you use a post, use request.form ). On the javascript side, you can request a get using pure javascript or jquery. I am going to use jquery in my example.

 $.get( url="example", data={key:value}, success=function(data) { alert('page content: ' + data); } ); 

This is how you transfer data from the client to the flask. The functional part of jquery code is how you pass data from a flask to jquery. Say, for example, you have a view called / example, and from the jquery side you pass a pair of values ​​for the key "list_name": "example_name"

 from flask import jsonify def array(list): string = "" for x in list: string+= x return string @app.route("/example") def example(): list_name = request.args.get("list_name") list = get_list(list_name) #I don't know where you're getting your data from, humor me. array(list) return jsonify("list"=list) 

and in the success function in jquery you say

  success=function(data) { parsed_data = JSON.parse(data) alert('page content: ' + parsed_data); } 

Note that the checkbox does not allow top-level lists in the json response for security reasons.

+9
source

Source: https://habr.com/ru/post/970073/


All Articles