Maison > Questions et réponses > le corps du texte
Service d'interception
.factory('sessionInjector', function ($rootScope) {
// Service logic
var sessionInjector = {
request: function(config) {
if ($rootScope.sysuser) {
config.headers['token'] = $rootScope.sysuser.token;
}
return config;
}
};
return sessionInjector;
});
Résultat :
J'ai écrit un en-tête d'intercepteur pour injecter des jetons, mais comment injecter les en-têtes Access-Control-Request-Headers ?
L'intercepteur d'injection s'écrit ainsi :
$httpProvider.interceptors.push('sessionInjector');
Cela devrait être vrai, non ? Je ne sais pas ce qui n'a pas fonctionné
Je l'ai testé plus tard et je l'ai injecté directement sans intercepteur. C'était la même chose que d'ajouter des en-têtes à une seule requête et d'exécuter le Access-Control-Request-Headers des en-têtes
阿神2017-05-15 17:09:10
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>]*
黄舟2017-05-15 17:09:10
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
.