angular.js - angular $http拦截器 headers注入token
phpcn_u1582
phpcn_u1582 2017-05-15 17:07:10
0
2
583

拦截器服务

.factory('sessionInjector', function ($rootScope) {
    // Service logic
    var sessionInjector = {
      request: function(config) {
        if ($rootScope.sysuser) {
          config.headers['token'] = $rootScope.sysuser.token;
          
        }
        return config;
      }
    };
    return sessionInjector;
  });

结果:

我写了个拦截器headers注入token,但是怎么注入了heads的Access-Control-Request-Headers的呢?

注入拦截器是这样写的:

$httpProvider.interceptors.push('sessionInjector');

应该没错吧?不知道哪里出问题了

后面测试了下不用拦截器直接注入,和在单个请求中加header都一样跑去了heads的Access-Control-Request-Headers

phpcn_u1582
phpcn_u1582

répondre à tous(2)
阿神

En-têtes de demande de contrôle d'accès

Avec ces informations d'en-tête, lorsque vous effectuez une demande de contrôle en amont, indiquez au serveur les informations d'en-tête personnalisées qui seront contenues dans la demande réelle. S'il y en a plusieurs, vous pouvez les séparer par des virgules.

Access-Control-Request-Headers : <field-name>[, <field-name>]*

黄舟

J'ai rencontré le même problème. Après une recherche sur Google, j'ai découvert que d'autres avaient également rencontré ce problème. Quelqu'un a donné une réponse. De façon inattendue, cela est lié au serveur. On dit qu'Angular utilise une méthode de requête croisée originale, ce qui empêche le serveur de la prendre en charge. J'utilise http-server0.90 ​​et ce problème se produit. Copiez tous les fichiers sur Tomcat et le problème disparaîtra. Je vous suggère d'essayer un autre logiciel serveur, peut-être qu'il sera résolu

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal