2013-04-30 2 views
0
category = new Category({name: name, img: img}); 
category.save(null, { 
success: function(){ 
    console.log("saved") 
}, 
error: function(){ 
    console.log("error") 
} 
});  

У меня есть форма, и когда кнопка нажата представить, он захватывает имя и Img данные и выше код выполняется.обратного вызов ошибки вызывается после сохранения модели успешной в базе

Однако запрос POST остается в ожидании и завершается только при обновлении страницы. Несмотря на то, что данные сохраняются в базе данных, вызывается обратный вызов ошибки. Я не знаю, что здесь не так, я новичок в Backbone, и я использую Backbone Relational в этом случае

+0

проверить http-запрос при выполнении запроса POST (я рекомендую использовать Chrome, открывая инструменты dev и ищу запрос на вкладке сети.) Это даст вам больше информации о том, что происходит с вашим запросом. – kinakuta

+0

Ya, я узнал о состоянии ожидания только через Chrome, после отправки, он остается в ожидании, и когда я обновляюсь, данные сохраняются в базе данных, но вызываемый обратный вызов ошибки вызывается. – kumarz

+0

Вы пробовали использовать скрипач? – Justin

ответ

2

Я считаю, что причина, по которой ваш POST находится в ожидании, заключается в том, что он не слышал с сервера все же. Несмотря на то, что сервер был достигнут и обработал запрос, если он не прошел обратно HTTP status code, ваш внешний интерфейс останется в состоянии ожидания до его завершения.

Проверьте свою внутреннюю базу и убедитесь, что AJAX PUT, POSTS и DELETE возвращают коды состояния HTTP. Хорошим местом для успешного вызова является возврат кода состояния 200, что означает «ОК», все прошло отлично. Для отказа есть старый режим ожидания, код состояния 500 «Внутренняя ошибка сервера». Есть еще много выбора, поэтому выберите один, который подходит.

Надеюсь, что это поможет.

+0

Спасибо! Бэкэнд, сервер узлов в моем случае, не отправлял ответ. Я исправил проблему, используя метод res() – kumarz

Смежные вопросы