Laquelle des conditions suivantes est remplie lors de la création d'interfaces qui modifient les données sur le serveur?

StackOverflow https://stackoverflow.com/questions/1127702

  •  13-09-2019
  •  | 
  •  

Question

Je viens de terminer un test BrainBench et pour la vie de mon ne peut pas comprendre la réponse à cette question ... Je ne pense pas qu'il y ait une réponse correcte.

Choix 1 demandes PUT doivent être utilisés; ils ne sont pas reproductibles.

Choix 2 requêtes HEAD doivent être utilisés; ils réduisent le trafic de données.

Choix 3 requêtes GET doivent être utilisés; ils sont plus faciles à envoyer à d'autres utilisateurs.

Choix 4 requêtes POST doivent être utilisés car les requêtes GET pourraient être envoyés par inadvertance par un moteur de recherche

Choix 5 demandes de suppression doivent être utilisés; ils ont été conçus pour cet usage.

Était-ce utile?

La solution

Je ne suis pas positif à ce sujet, mais je suis sûr que son choix 4.

Disons que vous avez un lien qui va à /Delete.aspx?id=4, et Google décide d'analyser ce lien. En supposant Theres aucun contrôle d'autorisation, Google peut effacer vos dossiers.

Edit: Heres une discussion SO pourquoi POSTs sont utilisés au lieu de pour les actions GET qui modifient les données.

Autres conseils

PUT, POST et SUPPRIMER peuvent tous être utilisés. SUPPRIMER supprime les données, qui tombe sous la rubrique « altérant ». remplace PUT. POST peut faire quoi que ce soit.

La question à mon humble avis n'est pas bien formulée, mais les réponses 1 et 5 contiennent des informations erronées, 4 est sans doute censé être la bonne réponse.

Si PUT remplace le contenu, il est idempotent, et donc reproductible, et donc 1 est faux, si aucune raison de la deuxième moitié de la peine. HEAD serait absurde dans ce cas, il est sorti. GET est mauvais pour les raisons mentionnées ci-dessus (robots d'exploration du contenu nuking, etc.) - GET sortiras. Il doens't signifiait GET (oh et avoir un certain côté affecte) POST est la bonne réponse. SUPPRIMER est destiné à ... la suppression de ressources. Ce qui est pas ce que vous voulez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top