9951 explained code solutions for 126 technologies


backbone.jsHow do I set headers in Backbone.js?


Backbone.js provides a way to set headers for all requests made from the application. This can be done by setting the headers property in the sync method of the model or collection.

For example, if you want to set a Authorization header on all requests, you can do the following:

MyModel = Backbone.Model.extend({
  sync: function(method, model, options) {
    options.headers = {
      'Authorization': 'Bearer <token>'
    };
    return Backbone.sync(method, model, options);
  }
});

The sync method takes three parameters:

  • method: The HTTP method to use for the request (e.g. GET, POST, PUT, etc).
  • model: The model or collection that is being synced.
  • options: An options object containing the headers to be set.

The options object is passed to the Backbone.sync method, which is responsible for making the actual request.

You can also set headers on a per-request basis by passing the headers option when calling sync directly. For example:

MyModel.fetch({
  headers: {
    'Authorization': 'Bearer <token>'
  }
});

Helpful links

Edit this code on GitHub