ホームページ ウェブフロントエンド jsチュートリアル angular9 でのインターセプターの使用法に関する簡単な説明

angular9 でのインターセプターの使用法に関する簡単な説明

Jan 29, 2021 pm 07:10 PM
インターセプター

この記事では、angular9 でのインターセプターの使用について説明します。一定の参考値があるので、困っている友達が参考になれば幸いです。

angular9 でのインターセプターの使用法に関する簡単な説明

# 関連チュートリアルの推奨事項: 「

angular チュートリアル

# インターセプターはトークンを均一に追加します#バックエンド管理システムを構築する場合、各リクエストのリクエストヘッダーにトークンを追加する必要があるため、angular のインターセプターについて学び、

#Interceptor の使用法

1. ネットワーク リクエスト用の http.service.ts を作成します

import { Injectable } from '@angular/core';import { HttpClient } from '@angular/common/http';@Injectable({
  providedIn: 'root'})export class HttpService {

  constructor(private http: HttpClient) { }
  getData () {
    return this.http.get('/assets/mock/data.json')
  }}
ログイン後にコピー

2. noop.interceptor を作成します。 ts、インターセプタ実装コード

import { Injectable } from '@angular/core';import {
  HttpEvent, HttpInterceptor, HttpHandler, HttpRequest, HttpResponse} from '@angular/common/http';import { Observable } from 'rxjs';import { tap } from 'rxjs/operators';import { Router } from '@angular/router';/** Pass untouched request through to the next request handler. */@Injectable()export class NoopInterceptor implements HttpInterceptor {
    constructor (private router: Router) {}
  intercept(req: HttpRequest<any>, next: HttpHandler):
    Observable<HttpEvent<any>> {
    // 拦截请求,给请求头添加token
    let url = req.url // 可以对url进行处理
    let token = document.cookie && document.cookie.split("=")[1]
    // 登录请求排除在外
    // if (!url.includes('login')) {
        req = req.clone({
            url, // 处理后的url,再赋值给req
            headers: req.headers.set('Authorization', token)//请求头统一添加token
        })
    // }
    return next.handle(req).pipe(
        tap(
         event => {
          if (event instanceof HttpResponse) {
           console.log(event);
           if (event.status >= 500) {
            // 处理错误
           }
          }
         },
         error => {
          // token过期 服务器错误等处理
        //   this.router.navigate(['/login']);
         })
       );
  }}
ログイン後にコピー

3. app.module.ts で

3.1HttpClientModule## を使用します #3.2 HttpService の登録

3.3 NoopInterceptor インターセプターの使用

#

import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';import { HttpService } from './auth/http.service';import { NoopInterceptor } from './auth/noop.interceptor';@NgModule({
   imports: [
      BrowserModule,
      HttpClientModule,
      AppRoutingModule   ],
   providers: [
      HttpService,
      { provide: HTTP_INTERCEPTORS, useClass: NoopInterceptor, multi: true }
   ],
   // ... 省略})
ログイン後にコピー

#インターセプター実装後の効果

# インターセプターは次のとおりです。通常はルーティング ガードと一緒に使用されます。 プログラミング関連の知識をさらに知りたい場合は、プログラミング学習コース

をご覧ください。 !

以上がangular9 でのインターセプターの使用法に関する簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Golang のインターセプター メカニズムを解明する Golang のインターセプター メカニズムを解明する Apr 08, 2024 am 08:39 AM

インターセプターは、メソッド実行の前後にカスタム動作を挿入できるようにする設計パターンで、Go では net/http ミドルウェアを通じて実装できます。スケーラビリティ、再利用性、テスト容易性などの利点があり、認証、認可、キャッシュ、ロギング、カスタム エラー処理などのシナリオで使用できます。

uniapp でルート インターセプターを使用するためのヒント uniapp でルート インターセプターを使用するためのヒント Dec 17, 2023 pm 04:30 PM

uniapp でルート インターセプターを使用するためのヒント uniapp 開発では、ルート インターセプターは非常に一般的な機能です。ルート インターセプターを使用すると、ルーティング ジャンプの前に、アクセス許可の確認、ページのパラメーターの受け渡しなど、いくつかの特定の操作を実行できます。この記事では、uniapp でルート インターセプターを使用するためのヒントを紹介し、具体的なコード例を示します。ルート インターセプターの作成 まず、uniapp プロジェクトでルート インターセプターを作成する必要があります。作成方法は以下の通りです。 プロジェクトのルートディレクトリにinterを作成します。

Spring インターセプターの原理と利点を理解する Spring インターセプターの原理と利点を理解する Dec 30, 2023 pm 12:25 PM

Spring インターセプターの動作原理と利点を探る はじめに: Spring フレームワークは、Java 開発で最も一般的に使用されるフレームワークの 1 つであり、豊富な機能と柔軟性を提供し、開発者がアプリケーションをより効率的に開発できるようにします。重要なコンポーネントの 1 つはインターセプターです。この記事では、Spring インターセプターの動作原理と利点を詳しく説明し、具体的なコード例を示します。 1. Spring インターセプターの仕組み Spring インターセプターはアスペクト指向プログラミングを使用します (

Golang におけるインターセプターの包括的な分析 Golang におけるインターセプターの包括的な分析 Apr 07, 2024 am 10:18 AM

Golang では、インターセプターを使用して、関数の実行の前後に追加のコードを挿入できます。シナリオには、ロギング、認証、キャッシュなどが含まれます。インターセプターは、ハンドラー関数タイプを作成してから、そのハンドラー関数を受け入れ、追加のロジックを含む新しいハンドラー関数を返すインターセプター関数を作成することによって実装されます。実際の戦闘では、インターセプターを使用してすべてのリクエストを記録し、デバッグと分析を容易にすることができます。

Golang でインターセプターをマスターする Golang でインターセプターをマスターする Apr 07, 2024 pm 09:33 PM

インターセプターを使用すると、既存のコードを変更せずにカスタム ロジックを Go アプリケーションに挿入できます。これらは、認証、ロギング、エラー処理、パフォーマンス監視などに使用できます。インターセプターを作成するには、HTTP 要求を処理するための ServeHTTP() メソッドと制御を渡すための Next() メソッドを定義する Handler インターフェイスを実装する必要があります。実際の例では、ロギング インターセプターを使用してすべての受信リクエストの URL パスを記録する方法と、複数のインターセプター (認証インターセプターなど) をチェーンして複雑なアプリケーション ロジックを作成する方法を示します。

golangにはインターセプタがありますか? golangにはインターセプタがありますか? Jul 18, 2023 pm 02:23 PM

Golang は組み込みのインターセプターを提供しませんが、関数、インターフェイス、構造などの言語機能を使用して同様の機能を実現できます。一般的に使用されるインターセプターの実装方法は次のとおりです。ハンドラーとその次にインターセプターを実装する関数を呼び出します; 2. インターフェイス インターセプター、インターフェイスを定義し、ターゲット ハンドラーの前後にインターフェイスを実装することによってインターセプターを実装します。このメソッドはインターセプターをより柔軟にし、さまざまな用途で使用できます。インターフェイスにさまざまなインターセプター ロジックを実装します。

徹底分析:Golangインターセプターの実用化効果 徹底分析:Golangインターセプターの実用化効果 Mar 21, 2024 am 09:18 AM

Golang インターセプターは、ロギング、エラー処理、権限制御など、実際のアプリケーションで多くの機能を実装できる強力な設計パターンです。この記事では、Golang インターセプターの実際の適用効果を深く分析し、具体的なコード例を通じてその使用法と効果を示します。 1. Golang インターセプターとは Golang インターセプターとは、アスペクト指向プログラミング (AOP) デザイン パターンであり、関数呼び出しの前後にプロキシの層を追加することで、関数をインターセプトおよびインターセプトすることができます。

Vue テクノロジー開発におけるネットワーク リクエストのインターセプトと統合処理を処理する方法 Vue テクノロジー開発におけるネットワーク リクエストのインターセプトと統合処理を処理する方法 Oct 08, 2023 am 09:11 AM

Vue テクノロジー開発におけるネットワーク リクエストのインターセプトと統合処理を処理する方法 人気のあるフロントエンド開発フレームワークとして、Vue は、組み込みの axios ライブラリを通じてネットワーク リクエストを簡単に行うことができます。実際の開発では、認証やエラー処理などの一般的な機能を実装するために、ネットワーク リクエストをインターセプトして均一に処理する必要があることがよくあります。この記事では、Vue 開発でネットワーク リクエストをインターセプトして均一に処理する方法を紹介し、具体的なコード例を示します。 1. インターセプターの概念と機能 具体的な処理方法を紹介する前に、まずは

See all articles