gpt4 book ai didi

javascript - 如何从 jQuery ajax 调用返回和使用字符串数组?

转载 作者:行者123 更新时间:2023-11-28 20:11:23 25 4
gpt4 key购买 nike

我使用 Google App Engine (Python) 和 jQuery 来对服务器进行 Ajax 调用。我有一个页面,我想从对服务器的 Ajax 调用加载 Javascript 中的字符串列表。

我要调用的服务器方法:

class BrowseObjects(webapp.RequestHandler):
def get(self):
ids_to_return = get_ids_to_return()
// TODO: How to return these ids to the invoking ajax call?
self.response.out.write(ids_to_return)

我希望能够访问返回的 id 的 HTML 页面:

    var strings_from_server = new Array();

$.ajax({
type: "GET",
url: "/get_ids.html",
success: function(responseText){
// TODO: How to read these IDS in here?
strings_from_server = responseText
},
error: function (xhr, ajaxOptions, thrownError){
alert(xhr.responseText);
}
});

我对 Ajax 的经验有限——我只使用它们将数据存储到服务器(a-la POST 命令),所以我真的不知道如何从服务器取回数据。预先感谢所有帮助

编辑:我的最终答案:

我已经切换到完整的 Ajax 调用(以防止跨域请求)并处理“错误”回调。我的工作客户端方法如下所示:

         $.ajax({
type: "GET",
dataType: "json",
url: "/get_ids.html",
success: function(reponseText){
strings_from_server = responseText
},
error: function (xhr, ajaxOptions, thrownError){
alert(xhr.responseText);
}
});

请注意,我将数据类型指定为“json”。
我的最终服务器功能,以及 sahid 的回答,看起来像:

class BrowseObjects(webapp.RequestHandler):
def get(self):
ids_to_return = get_ids_to_return()
# Note: I have to map all my objects as `str` objects
response_json = simplejson.dumps(map(str, ids_to_return))
self.response.out.write(response_json)

谢谢大家!

最佳答案

django 库“simplejson”提供的 Google AppEngine SDK。

从 django.utils 导入 simplejson

所以您的处理程序可能只是:

from django.utils import simplejson
class BrowseObjects(webapp.RequestHandler):
def get(self):
ids_to_return = get_ids_to_return()
response_json = simplejson.dumps (ids_to_return)
self.response.out.write(response_json)

有一篇关于ajax/rpc的好文章:http://code.google.com/appengine/articles/rpc.html

关于javascript - 如何从 jQuery ajax 调用返回和使用字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3887266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com