Send token with every backbone sync request

前端 未结 4 1425
名媛妹妹
名媛妹妹 2020-12-13 05:01

My PHP api requires a user token be submitted with every request from my front-end Backbone app to make sure the user...

  1. Is active
  2. Has permissions
4条回答
  •  北海茫月
    2020-12-13 06:02

    Backbone uses jQuery's $.ajax, so you can use $.ajaxSetup to "set default values for future Ajax requests":

    $.ajaxSetup({
       headers: {
         "accept": "application/json",
         "token": YOUR_TOKEN
       }
    });
    

    Update: an improvement to this idea (thanks to @Glen) is to use $.ajaxSend to check for the existence of a token each time before setting it in the headers of the request:

    $(document).ajaxSend(function(event, request) {
       var token = App.getAuthToken();
       if (token) {
          request.setRequestHeader("token", token);
       }
    });
    

    Where App.getAuthToken() is a function in your Backbone app.

提交回复
热议问题