angular-13-login-registration-example について
Web API と連携し、JWT ベースの登録とログインを実装する Angular 13 のサンプルアプリです。ルーティング、HTTP インターセプター、フォーム検証、保護されたリソースへのアクセス、セッションストレージを示します。
主な機能
- 01JWT 登録・ログインフロー
- 02トークン処理用 HTTP インターセプター
- 03ルーティングとフォーム検証
- 04保護されたリソース用コンポーネント
- 05ブラウザーのセッションストレージ
活用シーン
- 01Angular でのトークン認証の学習
- 02登録・ログイン画面の作成
- 03Angular アプリと JWT Web API の接続
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
33掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| options | object | はい | コード生成オプション |
| options.outputPath | string | はい | 生成したテストを保存するディレクトリのパス(絶対パスを使用) |
| options.testNamePrefix | string | いいえ | 生成するテスト名に使用するプレフィックス(デフォルト:'GeneratedTest') |
| options.includeComments | boolean | いいえ | 生成するテストに説明コメントを含めるかどうか |
詳細
JWT と Web API を使用した Angular 13 のログインおよび登録の例
Web API と JWT を使用する、トークンベースの認証・認可アプリケーションを Angular 13 で構築します(HttpInterceptor、Router、フォーム検証を含みます)。
- ユーザー登録(サインアップ)とユーザーログインのための JWT 認証フロー
- HttpInterceptor と Router を含むプロジェクト構成
- HttpInterceptor の実装方法
- フォーム検証を備えたログインおよびサインアップコンポーネントの作成
- 保護されたリソースにアクセスするための Angular コンポーネント
- Angular アプリに動的なナビゲーションバーを追加する方法
- ブラウザーのセッションストレージの使用
ユーザー登録とユーザーログインのフロー
Web API を使用する JWT トークンベースの認証では、2 つのエンドポイントを呼び出します。
- ユーザー登録には POST
api/auth/signup - ユーザーログインには POST
api/auth/signin
以下のフローを見ると、Angular 13 の JWT 認証・認可クライアントが送受信するリクエストとレスポンスの概要を把握できます。

Router と HttpInterceptor を含む Angular JWT アプリの図

詳しくは、チュートリアルをご覧ください。
Spring Boot バックエンドを使用する場合
Node.js Express バックエンドを使用する場合
選択したバックエンドに応じて、app/_helpers/auth.interceptor.js を開き、次のようにコードを変更してください。
...
// const TOKEN_HEADER_KEY = 'Authorization'; // for Spring Boot back-end
const TOKEN_HEADER_KEY = 'x-access-token'; // for Node.js Express back-end
@Injectable()
export class AuthInterceptor implements HttpInterceptor {
...
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
...
if (token != null) {
// for Spring Boot back-end
// authReq = req.clone({ headers: req.headers.set(TOKEN_HEADER_KEY, 'Bearer ' + token) });
// for Node.js Express back-end
authReq = req.clone({ headers: req.headers.set(TOKEN_HEADER_KEY, token) });
}
return next.handle(authReq);
}
}
...
開発サーバーを起動するには、ng serve --port 8081 を実行します。http://localhost:8081/ にアクセスしてください。
さらに練習する
Node を使ったフルスタック:
Spring Boot を使ったフルスタック:
Django を使ったフルスタック:
Firebase を使ったサーバーレス:
統合(バックエンドとフロントエンドを同じサーバー/ポートで実行)
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。