recherche

Maison  >  Questions et réponses  >  le corps du texte

angulaire.js - Comment définir une requête Ajax globale dans Angular?

Besoin d'ajouter un jugement d'autorisation et une invite pour chaque demande ? Si vous avez des questions de débutant, n'hésitez pas à les poser

迷茫迷茫2857 Il y a quelques jours699

répondre à tous(1)je répondrai

  • 大家讲道理

    大家讲道理2017-05-15 16:52:14

    Vous feriez mieux de décrire le problème plus en détail, car l'approche spécifique peut varier en fonction de la situation.

    De manière générale, si vous souhaitez simplement personnaliser les en-têtes, vous pouvez utiliser $httpProvider.

    module.config(['$httpProvider', function ($httpProvider) {
        $httpProvider.defaults.headers.common['ANYTHING'] = 'YOU_NEEDED';
    }]);
    

    Veuillez noter que les en-têtes de post, patch et put ont leurs propres parties de configuration indépendantes (communes est partagé par toutes les méthodes). De plus, la configuration dans module.config n'est valable que lors de l'initialisation. Si vous devez la modifier en cours de fonctionnement, utilisez simplement le service $http directement :

    .
    $http.defaults.headers.common.Authorization = 'Basic YmVlcDpib29w'
    

    S'il s'agit de gérer uniformément les requêtes, les réponses, les erreurs de requête et les erreurs de réponse, alors vous devez utiliser des Intercepteurs . Le code de cet exemple est trop verbeux, je ne l'écrirai donc pas. Vérifiez simplement le document $http service vous-même. Pour faire simple, vous pouvez utiliser factory pour créer des intercepteurs personnalisés, puis les ajouter à $httpProvider.interceptors (qui est un tableau), afin que ces intercepteurs agissent comme un middleware. Chaque requête sera traitée de manière uniforme.

    Enfin, je dois dire, soit vous décrivez le problème plus en détail et avec précision, soit vous prenez l'initiative de lire la documentation de $http et $httpProvider. ne fait que deux pages. Que voulez-vous ? Tout ce que vous savez est là.

    répondre
    0
  • Annulerrépondre