我正在使用Backbone Collection来获取记录。 Web服务已在C#,Soap中实现。
Backbone集合语法为:
define([
'underscore',
'jquery',
'backbone'
], function(_, $, Backbone) {
var GetProductCollection = Backbone.Collection.extend({
initialize: function(options){
console.log("product initialized");
},
url: function(){
return "http://example.com/WebMethod.aspx?jsonp=&function=GetAllItems";
},
//fetch method response 404 before calling parse
parse: function(response){
console.log(response);
}
});
return GetProductCollection;
});
一旦触发了collection.fetch({success:function(collection,response){},error:function(collection,response){}}),所需的URL命中服务器并带来数据已显示网络选项卡200从浏览器检查时的状态。 Backbone Collection响应为404,并执行错误回调函数。
来自退出网络服务(API)的数据已按以下格式作为正文内容返回
('[{
"Status": true,
"Mesg": [
{
"Id": "8f54381a-06f9-4816-84ff-161c594b2cca",
"Product": {},
}
},
{
"Status": true,
"Mesg": [
{
"Id": "8f54381a-06f9-4816-84ff-161c594b2cca",
"Product": {},
}
}]');
所以Backbone不期待string();但是现有的服务已经与Jquery的AJAX调用集成在一起。所以我正在寻找Backbone集合接受上述格式响应的替代解决方案。