2015-10-15 3 views
0

Je viens de terminer la mise à jour de mon application pour utiliser la branche jj-abrams de ember-simple-auth (bientôt 1.0).En-tête d'autorisation ember-simple-auth manquant lorsque vous n'utilisez pas ember-data

Cela fonctionne très bien lorsque j'utilise des données de braises mais, pour une route, j'utilise Ember. $. GetJSON pour récupérer des données de graphe directement à partir du serveur.

Dans cet exemple, l'en-tête d'autorisation est absent de la demande et je devine que c'est parce qu'il n'utilise pas l'adaptateur d'application (par conséquent en contournant authorizer: 'authorizer:devise')?

Existe-t-il un moyen d'ajouter cet en-tête manuellement, ou un meilleur moyen de faire cette demande?

Répondre

0

Bien sûr, vous pouvez simplement inclure la session, alors vous devriez avoir accès aux informations d'identification et l'utilisation que vous devez les ajouter à votre routeur (je suppose qu'il utilise le AuthenticatedRouteMixin sur votre routeur.

Ou pour votre contrôleur ajouter:

session: Ember.inject.service('session') 

alors vous pouvez faire un get:

this.get('session') 

et d'examiner l'objet pour trouver ce dont vous avez besoin là-bas, je crois que l'art Cela devrait vous faciliter la tâche sans utiliser Ember-Data.

+0

Ai-je raison de penser que vous ne pouvez injecter le service dans un contrôleur et pas un itinéraire? –

+0

vous pouvez injecter le service de session dans tout ce que vous voulez. Vous pouvez appeler la méthode 'authorize' du service de session pour autoriser les requêtes AJAX, puis: http://ember-simple-auth.com/api/classes/SessionService.html#method_authorize – marcoow

+0

yep marcoow, que vous pouvez faire, autoriser uniquement ajoute le jeton à l'appel ajax, de sorte que vous pouvez utiliser cela pour ajouter vos en-têtes. c'est ce que j'ai fait dans mes projets. –