擅长:python、mysql、java
<p>如果在<code>passFails</code>中添加调试打印作为第一行,您将看到如下内容:</p>
<pre><code>def passFails():
print(request.args)
# Out: ImmutableMultiDict([('host[]', '1'), ('host[]', '2'), ('host[]', '3')])
</code></pre>
<p>如前所述,您试图传递一些javascript数组,因此您的请求看起来像:</p>
<pre><code>$.get(
url="/passFails",
data={host: [1,2,3]},
success = function (data) {
alert('page content: ' + data);
}
);
</code></pre>
<p>它将被转换成一个请求url,比如:</p>
<pre><code>http://localhost/passFails?host[]=1&host[]=2&host[]=3
</code></pre>
<p>因此,在<code>host</code>键上找不到您的值。为了让它工作,你可以使用<a href="http://werkzeug.pocoo.org/docs/0.14/datastructures/#werkzeug.datastructures.MultiDict.getlist" rel="nofollow noreferrer">^{<cd3>}</a>。另一个选项是在发送请求之前将数组中的<code>myHost</code>值序列化为JSON字符串,这样您就可以以<code>request.args.get['host']</code>的形式访问该值,但是您必须从Flask中的JSON表示反序列化它。你知道吗</p>