gpt4 book ai didi

jquery - 使用 Tornado 向ajax发送响应

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:22 24 4
gpt4 key购买 nike

我有一个 web 表单,它向包含表单数据的 Tornado 服务器发送 ajax post 请求,但响应是

self.write(message)

只是显示在浏览器中而不是 js 处理它。我该如何纠正这个问题?

class NewHandler(BaseHandler):
@tornado.web.authenticated
def post(self):
message = {
"id": str(uuid.uuid4()),
"from": self.current_user["name"],
"body": self.get_argument("body"),
}

message["html"] = tornado.escape.to_basestring(self.render_string("message.html", message=message))
self.write(message)
messages.new([message])

js代码:

$(document).ready(function() {
document.session = $('#session').val();


$('#messageform').submit(function(event) {
var formdata = $('#messageform').formData();
var button = $('#messageform').find("input[type=submit]");
button.prop("disabled", true);
jQuery.ajax({
url: '/new',
type: 'POST',
data: formdata,
success: function(response){
messageBox.show(eval("("+response+")");
button.prop("disabled", false);
}
});
};

var messageBox = {
show: function(message){
var content = $(message.html);

$("#inbox").append(content);

}

最佳答案

尝试在 self.write() 方法之后引发 StopIteration:

self.write(somedata)
raise StopIteration

关于jquery - 使用 Tornado 向ajax发送响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18635765/

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