J'ai une ressource à une URL que les humains et les machines doivent pouvoir lire:La meilleure façon de décider de la réponse XML ou HTML?
http://example.com/foo-collection/foo001
Quelle est la meilleure façon de faire la distinction entre les navigateurs humains et les machines, et le retour HTML ou un domaine- réponse XML spécifique?
(1) Le champ Type d'acceptation de la demande?
(2) Un bit d'URL supplémentaire? par exemple:
http://example.com/foo-collection/foo001 -> HTML retourne
http://example.com/foo-collection/foo001?xml -> retours, euh, XML
Je ne veux pas obliger les machines à lire la ressource pour analyser HTML (ou XHTML pour cette matière). Les machines comme googlebot devraient recevoir la réponse HTML.
Il est raisonnable de supposer que je contrôle les lecteurs de la machine.
Étant donné que tout programme nécessitant le XML est un programme que je contrôle, ne peut-il pas toujours modifier l'URL collée? (Je suis un peu un défenseur des diables - j'aime bien le son de ce schéma). –
Bien sûr, vous pouvez toujours ajouter des conventions supplémentaires, mais ce sera toujours "l'offre spéciale de John". En utilisant l'en-tête Accept vous communiquez clairement qu'il s'agit d'une ressource, et vous vous différenciez par le seul critère pertinent - quel format avez-vous besoin à un moment donné? –