Backbone js fetch总是调用error func。紧急问〜

时间:2012-03-02 03:31:50

标签: internet-explorer backbone.js fetch func

有几天困扰我的问题。我疯了〜我的代码在这里〜

// 
// Index
// ------
// Main controller for the application - orchestrates sub-views.
vpn.routers.Index = Backbone.Router.extend({

  routes : {
    "/": "index"
  },

  // Initializes the workspace, binding it to <body>.
  initialize : function() {
    _.bindAll(this, 'index');
  },

  //
  // Index View
  // ----------
  // The index page for the application
  //
  index : function() {

  }

});

$(document).ready(function() {
  // 
  // Wire up all the controllers when the document
  // has loaded.
  //

    vpn.app.ui.UserLogin = new vpn.view.UserLogin();
    vpn.app.ui.UserData = new vpn.view.UserData();

    vpn.app.data.Account.fetch({
        success: function(data){
//          alert(data.get('user').username)
            if(data.get("status") == "200") {
                vpn.app.data.UserData.fetch({
                    success: function() {
                        // render the container
                        vpn.app.ui.UserData.render();
                        // render the header
                        vpn.app.ui.HeaderBar.toRate();
                    }
                });
            } else {
                vpn.app.ui.UserLogin.render();
            }
        },
        error: function(data) {
            alert(typeof(data));
            alert("stupid IE!in index.js");
        }
    });

    vpn.app.router.Base = new vpn.routers.Base();
    vpn.app.router.Index = new vpn.routers.Index();

    // Start the history
    Backbone.history.start();

});

当我在IE8中运行我的HTML页面时,模型提取总是调用错误函数 它返回警报(“愚蠢的IE!in index.js”)〜
但是同样的代码与FF,Chrome一起运作良好。我真的不知道为什么! 在使用Python的后台程序中,我返回一个数据类型为JSON的数据 我真的需要一只手!谢谢:)〜

  

在FF中,请求成功↓↓↓↓。

{"status": "200", "user": {"username": "ser", "quota_cycle": 30, "site_password": "698d51a19d8a121ce581499d7b701668", "name": "", "creation": "2011-12-30 00:00:00", "enabled": true, "site": "http://shuen.blog.com/", "email": "dbdhpy@gmail.com", "note": null, "quota_bytes": 10737418240, "active": true, "password": null, "id": 2}}

  

这是JSON↓↓↓↓。

status "200"
user Object { username="ser", quota_cycle=30,site_password="698d51a19d8a121ce581499d7b701668", more...}

1 个答案:

答案 0 :(得分:1)

在错误回调中,检查回复

error: function(data, response) {
    console.log(response.responseText);
}

这可能不是您期望的JSON。我的猜测是mime有问题,你的python后端会发送错误页面或其他内容。

希望有所帮助。