Nano Hash - криптовалюты, майнинг, программирование

Отправка ответа на ajax с помощью торнадо

У меня есть веб-форма, которая отправляет почтовый запрос ajax на сервер торнадо, содержащий данные формы, но ответ

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);

}
05.09.2013

  • Попробуйте вызвать event.preventDefault(); прямо перед var formdata = $('#messageform').formData(); 29.10.2017

Ответы:


1

Попробуйте поднять StopIteration сразу после метода self.write():

self.write(somedata)
raise StopIteration
05.09.2013
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..