Php 断言失败:所有浏览器中的对象(匿名函数)

Php 断言失败:所有浏览器中的对象(匿名函数),php,jquery,serialization,handlebars.js,marionette,Php,Jquery,Serialization,Handlebars.js,Marionette,我正在尝试调试我的应用程序未正确前进的问题(昨天离开时工作正常),它给我的只是app.js中的以下错误(从控制台记录): 即使如此,只有在添加以下内容以从RSVP库抛出正确错误之后: RSVP.on('error', function(reason) { console.assert(false, reason); }); 代码库非常庞大,几乎涵盖了当前使用的每种语言,从香草Javascript到Handlebar到SQL到PHP等等,现在还不清楚从何处开始寻找导致错误的原因 在这个阶

我正在尝试调试我的应用程序未正确前进的问题(昨天离开时工作正常),它给我的只是app.js中的以下错误(从控制台记录):

即使如此,只有在添加以下内容以从RSVP库抛出正确错误之后:

RSVP.on('error', function(reason) {
    console.assert(false, reason);
});
代码库非常庞大,几乎涵盖了当前使用的每种语言,从香草Javascript到Handlebar到SQL到PHP等等,现在还不清楚从何处开始寻找导致错误的原因

在这个阶段,网络流量没有明显的问题。有人能帮我找到我真正需要的东西吗?显然,我不会发布整个代码库,但是如果人们需要任何额外的代码来帮助他们解决问题,并且可以证明为什么我非常乐意提供它,假设我能够找到一种方法来做到这一点而不影响项目的安全性

header.js的第90行是:

console.log('view:header@init-summary');
等待几分钟后,系统突然开始过渡到应用程序的下一阶段,但在下一步出现以下错误:

Assertion failed: Object {readyState: 4, responseText: "{"errors":   
[{"status":"404","code":0,"title":"Not Found"}]}", responseJSON: 
Object, status: 404, statusText: "Not Found"}(anonymous function) @ 
app.js:21lib$rsvp$events$$default.trigger @ rsvp.js:245(anonymous 
function) @ rsvp.js:779
以及:

吃过午饭回来后,应用程序开始进入第三阶段,出现以下错误:

Uncaught TypeError: Cannot read property 'get' of undefined
该错误指向通用辅助程序库,但未指定从何处调用辅助程序库

更新,现在返回以下错误:

PATCH     http://localhost:4200/data/stub/proposal/P9UZKZYXH92YFDUHGLUK/relationships
/selected-quote 404 (Not Found)send @ jquery.js:9664jQuery.extend.ajax 
@ jquery.js:9215Backbone.RelationalModel.saveRelationship @ json-
api.js:414Marionette.CompositeView.extend.saveApplication @ 
premiums.js:127Marionette.CompositeView.extend.submitStep @ 
premiums.js:118(anonymous function) @ 
backbone.marionette.js:2837triggerEvents @ backbone.js:370triggerApi @ 
backbone.js:357eventsApi @ backbone.js:155Events.trigger @ 
backbone.js:346Marionette.ItemView.extend.select @ 
premium.js:58jQuery.event.dispatch @ jquery.js:4670elemData.handle @ 
jquery.js:4338
jquery.js:9664 XHR finished loading: PATCH   
"http://localhost:4200/fishermen-wires.marionette/stub/proposal/P9UZKZYXH92YFDUHGLUK/relationships/selected-
quote".send @ jquery.js:9664jQuery.extend.ajax @ 
jquery.js:9215Backbone.RelationalModel.saveRelationship @ json-
api.js:414Marionette.CompositeView.extend.saveApplication @ 
premiums.js:127Marionette.CompositeView.extend.submitStep @ 
premiums.js:118(anonymous function) @ 
backbone.marionette.js:2837triggerEvents @ backbone.js:370triggerApi @ 
backbone.js:357eventsApi @ backbone.js:155Events.trigger @ 
backbone.js:346Marionette.ItemView.extend.select @ 
premium.js:58jQuery.event.dispatch @ jquery.js:4670elemData.handle @     
jquery.js:4338
并且正在Chrome中实例化第二个视图,但不是在Firefox或Safari中。我已经硬加载,缓存清理和删除了Chrome中的cookies。其他浏览器中没有缓存副本

我使用WebStorm中的“在路径中查找”功能搜索了我的整个应用程序,在我正在编写的应用程序中,jQuery库在任何时候都没有被调用,尽管另一个代码库可能会通过代理调用它,而且似乎该库希望以不同的方式与之连接,这取决于我传递数据后中介体与它通信的方式

更新:现在,在最后一个完成的步骤之前,逐步执行该步骤(更多内容有待编写,但这不是目前的问题):

这个错误看起来很明显,很容易修复,但是在出现这个新错误消息之前,我没有对代码做任何更改,即使我修复了它,很有可能一旦网站/应用程序上线,同样的问题会以某种形式再次出现

更新:今早发布,应用程序现在间歇性显示:

Assertion failed: Objectabort: ( statusText )always: ()complete:   
()done: ()error: ()fail: ()getAllResponseHeaders: ()getResponseHeader: 
( key )overrideMimeType: ( type )pipe: ( /* fnDone, fnFail, fnProgress 
*/ )progress: ()promise: ( obj )readyState: 4responseText: "<br 
/>↵<b>Deprecated</b>:  Automatically populating $HTTP_RAW_POST_DATA is    
deprecated and will be removed in a future version. To avoid this 
warning set 'always_populate_raw_post_data' to '-1' in php.ini and use 
the php://input stream instead. in <b>Unknown</b> on line <b>0</b><br  
/>↵<br />↵<b>Warning</b>:  Cannot modify header information - headers 
already sent in <b>Unknown</b> on line <b>0</b><br />↵{"data":
{"type":"stub-proposal","id":"P8XSGIFHTDEX6GI6DQOT","attributes": 
{"add_ons":
{"legal_helpline":null,"new_for_old":null,"personal_accident":true}},"relationships":{"selected_quote":{"data":{"type":"insurance-    
quote","id":"QGZ7SLFNRR3BPOBNB7RB"}},"quotes":{"data":
[{"type":"insurance-quote","id":"QFRQ05MH3MYHNKEXQMV1"},
{"type":"insurance-quote","id":"Q9SLIOJLPQRVIQA31R0T"},  
{"type":"insurance-quote","id":"QGZ7SLFNRR3BPOBNB7RB"},
{"type":"insurance-quote","id":"QVSEVJ0BDC59DF19MICQ"}]}},"links":
{"self":"http:\/\/local.theinsuranceemporium.co.uk\/data\/stub\/proposal\/P
8XSGIFHTDEX6GI6DQOT"},"meta":{"current":false,"add_ons":
{"legal_helpline":{"title":"Legal Helpline","description":"If   
there\u0027s something strange, in your neighbourhood. Who you gonna 
call?","type":"toggle","premium":
{"frequency":"L","rate":"96.00"}},"new_for_old":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","type":"toggle","premium":
{"frequency":"L","rate":"37.00"}},"personal_accident":  
{"title":"Personal Accident","description":"Are you clumsy? Why not get 
some personal accident cover?!","type":"toggle","premium":     
{"frequency":"L","rate":"99.00"}}}}},"included":[{"type":"insurance-
quote","id":"QFRQ05MH3MYHNKEXQMV1","attributes":
{"package":"0ARGUBXV2TAQ2RPF6VNF","definition":
{"title":"Gold","sub_title":null,"description":"Gold insurance from The      
Insurance Emporium. Our top level insurance."},"premium":  
{"frequency":"L","rate":"24.30","discounted_amount":"24.30","discount_percentage":"0"},"total":{"amount":"24.30","frequency":"L"},"discounts":    
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability 
cover.","add_on":false},"value":1500000,"value_type":"stub"}, 
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for Old
","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal  
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"Q9SLIOJLPQRVIQA31R0T","attributes":
{"package":"00DPKFR8CKOEHPYKSI8H","definition":
{"title":"Gold","sub_title":null,"description":"Gold insurance from The 
Insurance Emporium. Our top level insurance."},"premium":    {"frequency":"A","rate":"220.00","discounted_amount":"220.00","discount_per    centage":"0"},"total":{"amount":"220.00","frequency":"A"},"discounts":
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability 
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna    
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"QGZ7SLFNRR3BPOBNB7RB","attributes":
{"package":"0ZOQVO9WAF9QL34TBGE0","definition":
{"title":"Silver","sub_title":"Better than 
Bronze","description":"Silver insurance from The Insurance Emporium. 
Our mid-level insurance."},"premium": 
{"frequency":"L","rate":"36.30","discounted_amount":"36.30","discount_perce    ntage":"0"},"total":{"amount":"36.30","frequency":"L"},"discounts":     
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability     
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"QVSEVJ0BDC59DF19MICQ","attributes":
{"package":"0P5K73S8WS1GZ83GIQ5A","definition":
{"title":"Silver","sub_title":"Better than 
Bronze","description":"Silver insurance from The Insurance Emporium. 
Our mid-level insurance."},"premium":
{"frequency":"A","rate":"395.00","discounted_amount":"395.00","discount_percentage":"0"},"total":{"amount":"395.00","frequency":"A"},"discounts":    [],"benefits":[{"identifier":"public_liability","meta_data":    
{"title":"Public Liability","description":"It\u0027s really great to have some public liability   
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}}]}
↵"setRequestHeader: ( name, value )state: ()status: 200statusCode: (  
map )statusText: "OK"success: ()then: ( /* fnDone, fnFail, fnProgress 
*/ )__proto__: Object(anonymous function) @ :4200/app/app.js:21
断言失败:Objectabort:(statusText)始终:()完成:
()完成:()错误:()失败:()GetAllResponseHeader:()getResponseHeader:
(键)覆盖emimetype:(类型)管道:(/*fnDone,fnFail,fnProgress
*/)进展:()承诺:(obj)readyState:4responseText:“↵不推荐使用:无法自动填充$HTTP\u原始\u POST\u数据
已弃用,将在将来的版本中删除。若要避免此问题,请执行以下操作:
警告将“始终填充原始数据”设置为php.ini中的“-1”,并使用
这个php://input 改为流。在第0行的未知中

↵警告:无法修改标题信息-标题 已在第0行中以未知方式发送
↵{“数据”: {“类型”:“存根建议”,“id”:“P8XSGIFHTDEX6GI6DQOT”,“属性”: {“附件”: {“法律帮助热线”:null,“新的”表示“旧的”:null,“个人事故”:true}},“关系”:{“选定的”{“数据”:{“类型”:“保险- 引号“,”id“:”QGZ7SLFNR3BPOBNB7RB“}}”,引号“{”数据“: [{“类型”:“保险报价单”,“id”:“QFRQ05MH3MYHNKEXQMV1”}, {“类型”:“保险报价单”,“id”:“Q9SLIOJLPQRVIQA31R0T”}, {“类型”:“保险报价单”,“id”:“QGZ7SLFNR3BPOBNB7RB”}, {“类型”:“保险报价单”,“id”:“QVSEVJ0BDC59DF19MICQ”}]},链接: {“self”:“http:\/\/local.theinsuranceemporium.co.uk\/data\/stub\/proposal\/P 8XSGIFHTDEX6GI6DQOT“},“meta”:{“current”:false,“add_-ons”: {“法律帮助热线”:{“标题”:“法律帮助热线”,“说明”:“如果” 你的邻居有点奇怪。你要找谁 呼叫?,“类型”:“切换”,“高级”: {“频率”:“L”,“比率”:“96.00}},“新换旧”:{“标题”:“新换新” 旧的“,”说明“:“我们\u0027将替换新的 旧“,”类型“:”切换“,”高级“: {“频率”:“L”,“比率”:“37.00”},“人身意外”: {“标题”:“人身事故”,“描述”:“你笨手笨脚吗?为什么不 一些人身意外险?!,“类型”:“切换”,“高级”: {“频率”:“L”,“费率”:“99.00”},“包括”:[{“类型”:“保险”- quote,“id”:“QFRQ05MH3MYHNKEXQMV1”,“属性”: {“包”:“0ARGUBXV2TAQ2RPF6VNF”,“定义”: {“title”:“Gold”,“sub_title”:null,“description”:“Gold insurance from The 保险商场。我们的顶级保险。“保费”: {“频率”:“L”,“费率”:“24.30”,“折扣金额”:“24.30”,“折扣百分比”:“0”},“总计”:{“金额”:“24.30”,“频率”:“L”},“折扣”: [],“利益”:[{“标识符”:“公共责任”,“元数据”: {“标题”:“公共责任”,“描述”:“这真是太好了。” 承担一些公共责任 封面“,“添加”:false},“值”:1500000,“值类型”:“存根”}, {“标识符”:“法律帮助热线”,“元数据”:{“标题”:“法律” “帮助热线”,“描述”:“如果您的 邻居,你要找谁 调用?,“add_on”:true},“value_type”:“stub”}, {“标识符”:“新换旧”,“元数据”:{“标题”:“新换旧” “,”说明“:”我们将替换新的 old.,“add_on”:true},“value_type”:“stub”}, {“标识符”:“个人事故”,“元数据”:{“标题”:“个人” “事故”,“描述”:“你笨手笨脚吗?为什么不找些私人的 事故保险?!,“添加”:真},“值类型”:“存根”}]}, {“类型”:“保险报价单”,“id”:“Q9SLIOJLPQRVIQA31R0T”,“属性”: {“包”:“00DPKFR8CKOEHPYKSI8H”,“定义”: {“title”:“Gold”,“sub_title”:null,“description”:“Gold insurance from The 保险商场。我们的顶级保险。},“保费”:{“频率”:“A”,“费率”:“220.00”,“折扣金额”:“220.00”,“折扣”
PATCH     http://localhost:4200/data/stub/proposal/P9UZKZYXH92YFDUHGLUK/relationships
/selected-quote 404 (Not Found)send @ jquery.js:9664jQuery.extend.ajax 
@ jquery.js:9215Backbone.RelationalModel.saveRelationship @ json-
api.js:414Marionette.CompositeView.extend.saveApplication @ 
premiums.js:127Marionette.CompositeView.extend.submitStep @ 
premiums.js:118(anonymous function) @ 
backbone.marionette.js:2837triggerEvents @ backbone.js:370triggerApi @ 
backbone.js:357eventsApi @ backbone.js:155Events.trigger @ 
backbone.js:346Marionette.ItemView.extend.select @ 
premium.js:58jQuery.event.dispatch @ jquery.js:4670elemData.handle @ 
jquery.js:4338
jquery.js:9664 XHR finished loading: PATCH   
"http://localhost:4200/fishermen-wires.marionette/stub/proposal/P9UZKZYXH92YFDUHGLUK/relationships/selected-
quote".send @ jquery.js:9664jQuery.extend.ajax @ 
jquery.js:9215Backbone.RelationalModel.saveRelationship @ json-
api.js:414Marionette.CompositeView.extend.saveApplication @ 
premiums.js:127Marionette.CompositeView.extend.submitStep @ 
premiums.js:118(anonymous function) @ 
backbone.marionette.js:2837triggerEvents @ backbone.js:370triggerApi @ 
backbone.js:357eventsApi @ backbone.js:155Events.trigger @ 
backbone.js:346Marionette.ItemView.extend.select @ 
premium.js:58jQuery.event.dispatch @ jquery.js:4670elemData.handle @     
jquery.js:4338
Uncaught Error: An "el" #policy-accept-terms must exist in DOM    
Marionette.Region.Marionette.Object.extend._ensureElement   @       
backbone.marionette.js:1231
Marionette.Region.Marionette.Object.extend.show @     
backbone.marionette.js:1089
Marionette.LayoutView.Marionette.ItemView.extend.showChildView  @     
backbone.marionette.js:3109
Marionette.LayoutView.extend.onRender   @   policy.js:79
(anonymous function)    @   backbone.marionette.js:685
Marionette.View.Backbone.View.extend.triggerMethod  @   
backbone.marionette.js:1939
Marionette.ItemView.Marionette.View.extend.render   @    
backbone.marionette.js:2089
Marionette.LayoutView.Marionette.ItemView.extend.render @
backbone.marionette.js:3092
Marionette.Region.Marionette.Object.extend._renderView  @
backbone.marionette.js:1215
Marionette.Region.Marionette.Object.extend.show @
backbone.marionette.js:1145
Marionette.LayoutView.Marionette.ItemView.extend.showChildView  @
backbone.marionette.js:3109
Controller.extend.policy    @   controller.js:117
_.extend.execute    @   backbone.js:1485
(anonymous function)    @   backbone.js:1473
(anonymous function)    @   backbone.js:1756
_.some._.any    @   underscore.js:258
_.extend.loadUrl    @   backbone.js:1754
_.extend.navigate   @   backbone.js:1816
_.extend.navigate   @   backbone.js:1490
Marionette.AppRouter.extend.goToStep    @   router.js:42
Marionette.AppRouter.extend.goToNext    @   router.js:74 
(anonymous function)    @   controller.js:66
triggerEvents   @   backbone.js:368
triggerApi  @   backbone.js:356
eventsApi   @   backbone.js:155
Events.trigger  @   backbone.js:346
(anonymous function)    @   backbone.marionette.js:691
Marionette.View.Backbone.View.extend.triggerMethod  @
backbone.marionette.js:1939
Marionette.ItemView.extend.submitStep   @   add-ons.js:95
jQuery.event.dispatch   @   jquery.js:4670
elemData.handle @   jquery.js:4338
Assertion failed: Objectabort: ( statusText )always: ()complete:   
()done: ()error: ()fail: ()getAllResponseHeaders: ()getResponseHeader: 
( key )overrideMimeType: ( type )pipe: ( /* fnDone, fnFail, fnProgress 
*/ )progress: ()promise: ( obj )readyState: 4responseText: "<br 
/>↵<b>Deprecated</b>:  Automatically populating $HTTP_RAW_POST_DATA is    
deprecated and will be removed in a future version. To avoid this 
warning set 'always_populate_raw_post_data' to '-1' in php.ini and use 
the php://input stream instead. in <b>Unknown</b> on line <b>0</b><br  
/>↵<br />↵<b>Warning</b>:  Cannot modify header information - headers 
already sent in <b>Unknown</b> on line <b>0</b><br />↵{"data":
{"type":"stub-proposal","id":"P8XSGIFHTDEX6GI6DQOT","attributes": 
{"add_ons":
{"legal_helpline":null,"new_for_old":null,"personal_accident":true}},"relationships":{"selected_quote":{"data":{"type":"insurance-    
quote","id":"QGZ7SLFNRR3BPOBNB7RB"}},"quotes":{"data":
[{"type":"insurance-quote","id":"QFRQ05MH3MYHNKEXQMV1"},
{"type":"insurance-quote","id":"Q9SLIOJLPQRVIQA31R0T"},  
{"type":"insurance-quote","id":"QGZ7SLFNRR3BPOBNB7RB"},
{"type":"insurance-quote","id":"QVSEVJ0BDC59DF19MICQ"}]}},"links":
{"self":"http:\/\/local.theinsuranceemporium.co.uk\/data\/stub\/proposal\/P
8XSGIFHTDEX6GI6DQOT"},"meta":{"current":false,"add_ons":
{"legal_helpline":{"title":"Legal Helpline","description":"If   
there\u0027s something strange, in your neighbourhood. Who you gonna 
call?","type":"toggle","premium":
{"frequency":"L","rate":"96.00"}},"new_for_old":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","type":"toggle","premium":
{"frequency":"L","rate":"37.00"}},"personal_accident":  
{"title":"Personal Accident","description":"Are you clumsy? Why not get 
some personal accident cover?!","type":"toggle","premium":     
{"frequency":"L","rate":"99.00"}}}}},"included":[{"type":"insurance-
quote","id":"QFRQ05MH3MYHNKEXQMV1","attributes":
{"package":"0ARGUBXV2TAQ2RPF6VNF","definition":
{"title":"Gold","sub_title":null,"description":"Gold insurance from The      
Insurance Emporium. Our top level insurance."},"premium":  
{"frequency":"L","rate":"24.30","discounted_amount":"24.30","discount_percentage":"0"},"total":{"amount":"24.30","frequency":"L"},"discounts":    
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability 
cover.","add_on":false},"value":1500000,"value_type":"stub"}, 
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for Old
","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal  
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"Q9SLIOJLPQRVIQA31R0T","attributes":
{"package":"00DPKFR8CKOEHPYKSI8H","definition":
{"title":"Gold","sub_title":null,"description":"Gold insurance from The 
Insurance Emporium. Our top level insurance."},"premium":    {"frequency":"A","rate":"220.00","discounted_amount":"220.00","discount_per    centage":"0"},"total":{"amount":"220.00","frequency":"A"},"discounts":
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability 
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna    
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"QGZ7SLFNRR3BPOBNB7RB","attributes":
{"package":"0ZOQVO9WAF9QL34TBGE0","definition":
{"title":"Silver","sub_title":"Better than 
Bronze","description":"Silver insurance from The Insurance Emporium. 
Our mid-level insurance."},"premium": 
{"frequency":"L","rate":"36.30","discounted_amount":"36.30","discount_perce    ntage":"0"},"total":{"amount":"36.30","frequency":"L"},"discounts":     
[],"benefits":[{"identifier":"public_liability","meta_data":
{"title":"Public Liability","description":"It\u0027s really great to 
have some public liability     
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}},
{"type":"insurance-quote","id":"QVSEVJ0BDC59DF19MICQ","attributes":
{"package":"0P5K73S8WS1GZ83GIQ5A","definition":
{"title":"Silver","sub_title":"Better than 
Bronze","description":"Silver insurance from The Insurance Emporium. 
Our mid-level insurance."},"premium":
{"frequency":"A","rate":"395.00","discounted_amount":"395.00","discount_percentage":"0"},"total":{"amount":"395.00","frequency":"A"},"discounts":    [],"benefits":[{"identifier":"public_liability","meta_data":    
{"title":"Public Liability","description":"It\u0027s really great to have some public liability   
cover.","add_on":false},"value":1500000,"value_type":"stub"},
{"identifier":"legal_helpline","meta_data":{"title":"Legal 
Helpline","description":"If there\u0027s something strange, in your 
neighbourhood. Who you gonna 
call?","add_on":true},"value_type":"stub"},
{"identifier":"new_for_old","meta_data":{"title":"New for 
Old","description":"We\u0027ll replace new for 
old.","add_on":true},"value_type":"stub"},
{"identifier":"personal_accident","meta_data":{"title":"Personal 
Accident","description":"Are you clumsy? Why not get some personal 
accident cover?!","add_on":true},"value_type":"stub"}]}}]}
↵"setRequestHeader: ( name, value )state: ()status: 200statusCode: (  
map )statusText: "OK"success: ()then: ( /* fnDone, fnFail, fnProgress 
*/ )__proto__: Object(anonymous function) @ :4200/app/app.js:21
<script type="text/javascript" src="vendor/jquery.js"></script>