Spring Boot : écrire le serveur (école d'ingénieur) · Chapitre 9 · Application directe du cours
L'aperçu de Vite
Le client Vue face au serveur · niveau 1 (application)
Énoncé
Autoriser l'application servie par vite preview, qu'elle soit ouverte à http://localhost:4173 ou à http://127.0.0.1:4173, sans ouvrir l'API aux autres ports. Écrire un test qui le vérifie.
Corrigé
Les deux noms désignent la même machine mais forment deux origines : on les ajoute toutes deux.
cors:
origines:
- http://localhost:5173
- http://localhost:4173 # exercice 9.2 : vite preview
- http://127.0.0.1:4173
@Test
void lApercuDeViteEstAutorise() {
assertThat(mvc.options().uri("/api/livres")
.header("Origin", "http://localhost:4173")
.header("Access-Control-Request-Method", "GET"))
.hasStatusOk()
.hasHeader("Access-Control-Allow-Origin", "http://localhost:4173");
}
@Test
void lAdresseNumeriqueEstUneAutreOrigine() {
assertThat(mvc.options().uri("/api/commandes")
.header("Origin", "http://127.0.0.1:4173")
.header("Access-Control-Request-Method", "POST"))
.hasStatusOk()
.hasHeader("Access-Control-Allow-Origin", "http://127.0.0.1:4173");
}
@Test
void uneAutreOrigineEstRefusee() {
assertThat(mvc.options().uri("/api/livres")
.header("Origin", "http://localhost:4174")
.header("Access-Control-Request-Method", "GET"))
.hasStatus(403)
.doesNotContainHeader("Access-Control-Allow-Origin");
}
Avec ce réglage, les tests de bout en bout du livre Vue, lancés contre ce serveur, passent (chapitre 12).
100 % gratuit
La suite du chapitre est sur Adloun
- 10 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.