如何使用jQuery正确地将字符串列表发布到Google App Engine应用程序?我创造了这样的东西:
$.post("/add", {tags:['first tag','second tag','third tag']}
然后在FireBug中我发现它变成了这样的东西:
tags%5B%5D=first tag&tags%5B%5D=second tag&tags%5B%5D=third tag
我不确定我是否正确发送了一份清单。如果没关系,那么如何用Python处理这个列表呢? 我尝试使用这样的东西:
tagsList = self.request.get("tags")
但没有太大的成功。 感谢
答案 0 :(得分:0)
一个简单的解决方案是在self.request.get("tags")
中投射list()
但是当我发送一个javascript数组时,这对我不起作用,但也许它适用于你的情况
答案 1 :(得分:0)
您可以将其序列化为JSON字符串,此字符串将被视为发布数据。
$.ajax({
type: "POST",
url: "/add",
contentType: "application/json",
data: JSON.stringify({tags:['first tag','second tag','third tag']}),
解析数据(例如Java):
try {
reader = request.getReader();
} catch (final IllegalStateException illegalStateException) {
reader = new BufferedReader(new InputStreamReader(
request.getInputStream()));
}
String line = reader.readLine();
while (null != line) {
sb.append(line);
line = reader.readLine();
}
reader.close();
String tmp = sb.toString();
if (Strings.isEmptyOrNull(tmp)) {
tmp = "{}";
}
return new JSONObject(tmp);