ตัวอย่าง 302 redirect ใน angular

การ 302 redirect ใน Angular คือการเปลี่ยนเส้นทางจาก URL เดิมไปยัง URL ใหม่ชั่วคราว โดยจะใช้ HTTP status code 302 เพื่อแจ้งให้เบราว์เซอร์และเครื่องมือค้นหาทราบถึงการเปลี่ยนแปลงนี้

การ 302 redirect ใน Angular สามารถทำได้โดยใช้คำสั่ง redirectTo() ในคอมโพเนนต์ Router โดยกำหนดค่า permanent เป็น false ตัวอย่างเช่น

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router';

@Component({
selector: 'app-example',
templateUrl: './example.component.html',
styleUrls: ['./example.component.css']
})
export class ExampleComponent implements OnInit {

constructor(private router: Router) {}

ngOnInit() {
this.router.redirectTo('/new-url', {
permanent: false
});
}

}

ในตัวอย่างนี้ เมื่อผู้ใช้เรียกใช้คอมโพเนนต์ ExampleComponent เบราว์เซอร์จะถูกเปลี่ยนเส้นทางไปยัง URL /new-url โดยใช้ HTTP status code 302

การ 302 redirect มีประโยชน์ในหลายกรณี เช่น การเปลี่ยนหน้าเว็บชั่วคราว การล็อกอินเข้าสู่ระบบ เป็นต้น

ตัวอย่างการทดสอบการ 302 redirect ใน Angular มีดังนี้

1
$ ng serve

เปิดเบราว์เซอร์ไปที่ http://localhost:4200/example

เบราว์เซอร์จะถูกเปลี่ยนเส้นทางไปยัง URL http://localhost:4200/new-url โดยใช้ HTTP status code 302

หากผู้ใช้รีเฟรชหน้าเว็บ เบราว์เซอร์จะกลับไปที่ URL http://localhost:4200/example