Rumah >Java >javaTutorial >Bila hendak menggunakan ResponseEntity?

Bila hendak menggunakan ResponseEntity?

Susan Sarandon
Susan Sarandonasal
2025-01-10 08:44:41670semak imbas

Quando usar ResponseEntity?

Mari kita lihat pengawal dengan titik akhir di bawah:

@RestController
@RequestMapping("v1/hello")
public class ExampleController {

    @GetMapping
    public ResponseEntity<String> get() {
        return ResponseEntity.ok("Hello World!");
    }
}

Apabila menggunakan @RestController anotasi Spring, secara lalai respons diletakkan di dalam badan respons, adalah tidak perlu menggunakan ResponseEntity menaip kaedah pulangan, hanya jenis respons secara langsung, seperti dalam contoh di bawah:

@RestController
@RequestMapping("v1/hello")
public class ExampleController {

    @GetMapping
    public String get() {
        return "Hello World!";
    }
}

Selain itu, secara lalai, sekiranya berjaya, kod status yang digunakan dalam titik akhir ialah 200 (OK), iaitu, ia hanya perlu diubah apabila anda ingin menggunakan status lain, dan bukan ResponseEntity perlu digunakan, hanya gunakan anotasi @ResponseStatus kaedah di atas:

@RestController
@RequestMapping("v1/hello")
public class ExampleController {

    @GetMapping
    @ResponseStatus(HttpStatus.ACCEPTED)
    public String get() {
        return "Hello World!";
    }
}

Jadi kenapa ResponseEntity wujud?

Untuk kes di mana anda perlu menambahkan lebih banyak maklumat pada respons daripada sekadar kandungan dan status, seperti menambah pengepala pada respons:

@RestController
@RequestMapping("v1/hello")
public class ExampleController {

    @GetMapping
    public ResponseEntity<String> get() {
        return ResponseEntity.ok()
            .header("X-Test", "Blabla")
            .body("Hello World!");
    }
}

Atas ialah kandungan terperinci Bila hendak menggunakan ResponseEntity?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn