Results 1 to 5 of 5

Thread: How can I set global http headers for ajax requests?

  1. #1
    Sencha User
    Join Date
    Feb 2012
    Posts
    5
    Vote Rating
    0
      0  

    Default Answered: How can I set global http headers for ajax requests?

    I want to send the device ID in every request to my server. What's the easiest way to globally set headers without regard to what store is being used (inline or a defined class)?

    I came up with this, which works but feels rather hacky:

    Code:
    Ext.override(Ext.data.proxy.Ajax, {
      constructor: function(config) {
        config.headers || (config.headers = {});
        config.headers.uuid = 'SOME-EXAMPLE-UUID';
        return this.callOverridden([config]);
      }
    });
    I'm new to Sencha Touch, so any help is appreciated.


  2. #2
    Sencha User mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    40,029
    Answers
    3976
    Vote Rating
    1368
      0  
    Mitchell Simoens @LikelyMitch
    Modus Create, Senior Frontend Engineer
    ________________
    Need any sort of Ext JS help? Modus Create is here to help!

    Check out my GitHub:
    https://github.com/mitchellsimoens

  3. #3
    Sencha User
    Join Date
    Feb 2012
    Posts
    5
    Vote Rating
    0
      0  

    Default

    Thanks, I ended up doing this:

    Code:
    Ext.Ajax.on('beforerequest', (function(klass, request) {  return request.headers.uuid = 'SOME-EXAMPLE-UUID';
    }), this);
    Obviously I'll be using a function instead of hard-coding the uuid. Thanks again for the help, let me know if there's yet a better way.

  4. #4
    Sencha User
    Join Date
    Nov 2012
    Location
    India
    Posts
    25
    Vote Rating
    0
      0  

    Default set default headers

    This is what I use:

    Code:
    Ext.Ajax._defaultHeaders = {
                'token' : (loggedInUserToken == undefined) ? "" : loggedInUserToken,
                'Accept': 'application/json',
                'Authorization': 'Basic YX5iOmM='
            };

  5. #5
    Sencha Premium Member
    Join Date
    Jan 2012
    Location
    London, UK
    Posts
    590
    Answers
    25
    Vote Rating
    90
      0  

    Default

    I prefer semanticart's way as it's always best to avoid modifying private variables. The former way should be more future-proof.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •