- BackboneJS Tutorial
- BackboneJS - Home
- BackboneJS - Overview
- BackboneJS - Environment Setup
- BackboneJS - Applications
- BackboneJS - Events
- BackboneJS - Model
- BackboneJS - Collection
- BackboneJS - Router
- BackboneJS - History
- BackboneJS - Sync
- BackboneJS - View
- BackboneJS - Utility
- BackboneJS Useful Resources
- BackboneJS - Quick Guide
- BackboneJS - Resources
- BackboneJS - Discussion
BackboneJS-Sync Backbone.emulateHTTP
Description
If you are using a legacy web server that doesn't support Backbone's default REST/HTTP approach, you may choose to turn on Backbone.emulateHTTP. Setting this option to true will fake PUT, PATCH and DELETE requests with a HTTP POST, setting the X-HTTP-Method-Override header with the true method. If emulateJSON is also on, the true method will be passed as an additional _method parameter.
Syntax
Backbone.emulateHTTP = true
Example
<!DOCTYPE html> <head> <title>Sync Example</title> <script src = "https://code.jquery.com/jquery-2.1.3.min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js" type = "text/javascript"></script> </head> <body> <script type = "text/javascript"> //If web server that doesn't support Backbone's REST/HTTP approach, //then turn on 'Backbone.emulateHTTP' Backbone.emulateHTTP = true; //If web server can't handle requests encoded as application/json, //then set the 'Backbone.emulateJSON' to true Backbone.emulateJSON = true; //The sync() method reads and fetch the model data Backbone.sync = function(method, model) { document.write(method + ": " + JSON.stringify(model)); model.set('id', 1); //Set the model with id as '1' }; //'Player' is a model name and contains the values to be displayed //when you save the model var Player = new Backbone.Model({ fname:"Sachin", lname:"Tendulkar" }); //The 'save()' method saves data of the model by delegating to sync() method Player.save(); //Update the model with a value Player.save({country: "india"}); </script> </body> </html>
Output
Let's carry out the following steps to see how above code works −
Save above code in backbone-emulateHTTP.htm file
Open this HTML file in a browser.
backbonejs_sync.htm
Advertisements