Bonjour,
Avec un ami, nous commencons à utiliser Angular et Spring.
Nous avons quelques questions auquels nous ne trouvons pas de réponse claire sur internet.
Pour s'entrainer, nous aimerions faire une page qui affiche un article et des commentaires de la part des utilisateurs au sujet de cet article. Un sujet assez habituelle il me semble :)
1/ Faut-il faire un appel HTTP pour recevoir le contenu de l'article et un autre pour recevoir les commentaires de cet article? Ou est-il préférable (performance, organisation du code, bonnes pratiques, ...) de faire un seul appel qui retournera le contenu de l'article ET les commentaire ?
J'ai cru comprendre qu'Angular fonctionne par "components" donc j'aurais tendance à faire deux composants, même deux services (un pour les articles et l'autre pour les commentaires) et au final deux appels HTTP. Cependant, j'imagine qu'un appel permettant de recevoir toutes les informations de la page serait plus perfomants/rapide que deux appels différents.
2/
Lors du POST HTTP pour créer un nouveau commentaire, nous avons besoin d'envoyer au back l'id de l'utilisateur qui souhaite enregistrer ce commentaire. Est-il preferable d'envoyer un champ number "id_user" ou un object "User"? (Exemple ci-dessous)
La premiere solution permettrait d'envoyer moins d'informations inutile car au final seul l'ID de l'utilisateur est utile mais apparement Spring utilise des "entitées" et il semble plus simple coté Spring de recevoir un object "User" dans le back plutot que de faire le lien manuellement entre le number "id_user" et l'objet "User".
Exemple:
{
"id": 0,
"content": "blabla",
"creator_id": 2
}
Ou
{
"id": 0,
"content":
"blabla",
"createdBy": {
"id": 2,
"username": "toto",
etc...
}
}
En esperant ne pas avoir dit trop de bétises.
Merci pour votre attention :)