Dans les projets précédents j'ai travaillé, notre API prendrait et valider chaque argument POST individuellement par valeur:Qui est préférable d'utiliser des arguments POST ou JSON dans l'API REST?
$username = isset($_POST['username']) ? $_POST["username"] : null;
$password = isset($_POST['password']) ? $_POST["password"] : null;
Multidimensional arrays can be a bit tricky this way, though.
Pour un nouveau projet, je suis envisager une approche plus orientée objet, et prendre le JSON nécessaire pour construire des objets au lieu de chaque champ individuel:
$user = isset($_POST['user']) ? new User($_POST['user']) : null;
Quelle pratique est la plus courante, et pourquoi? Y a-t-il des risques de sécurité supplémentaires en utilisant l'un ou l'autre?
Tant que vous êtes en accord, il n'a pas vraiment d'importance. Si une méthode attend un nombre et un autre JSON, cela causera de la confusion. À mon humble avis, JSON est plus à l'épreuve du futur. Si demain vous décidez qu'un nombre ne suffit pas, vous pouvez simplement ajouter un autre paramètre au JSON au lieu de réécrire la méthode entière. –