Pourquoi certaines URL contiennent-elles à la fois un identifiant et un nom numériques?

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

  •  05-07-2019
  •  | 
  •  

Question

Je me demande pourquoi le lien vers le profil ressemble à ceci:

http://stackoverflow.com/users/ID/NAME

pas simplement:

http://stackoverflow.com/users/ID

ou même mieux:

http://stackoverflow.com/users/NAME

Peut-il y avoir quelques utilisateurs portant le même nom? Ou un utilisateur peut-il avoir plusieurs noms?

Était-ce utile?

La solution

Toutes les URL SO sont de la forme identifiant / description où l'identifiant est unique et la description facultative. Ainsi, / users / 12890 / arne-burmeister est identique à / users / 12890 / huhu et / questions / 420380 / pourquoi-est-ce que le lien vers l'utilisateur" profile-have-both-id-and-name est identique à / questions / 420380 / foo . La récupération utilise uniquement l'ID, mais elle est bien meilleure pour le classement Google lorsque l'utilisateur / la question / tout ce qui devrait être trouvé doit être trouvé dans l'URL (également pour les humains, c'est beaucoup plus descriptif; -).

Au fait, la récupération par ID est plus rapide que par une chaîne de texte aussi longue. Et bien sûr, l'URL reste valide si quelqu'un change son nom d'utilisateur ou la question.

Autres conseils

La partie après la dernière barre oblique semble être liée au référencement (c'est-à-dire rendre l'URL plus expressive).
Sur les URL que j'ai testées, vous pouvez remplacer cette partie par ce que vous vouliez, cela fonctionnait toujours. Ainsi, l'URL http://stackoverflow.com/users/37086/othername pointe toujours sur votre profil.

Il existe une demande d'uservoice pour cette requête. . Si vous voulez que cela se produise, uservoice est le bon endroit pour discuter / voter.

Je suppose que faire une recherche de base de données uniquement sur la chaîne de nom coûterait plus cher qu'une recherche numérique sur la clé primaire, même si la colonne de nom est indexée. Le nom est ensuite ajouté pour que les URL soient plus conviviales pour les utilisateurs et pour le référencement.

Votre nom sur SO n'est pas unique Cliquez sur les utilisateurs et tapez Josh, il y a une page entière de nous. Donc, vous devez avoir l'ID. En ce qui concerne pourquoi le nom de chacun devine est aussi bon que le mien.

Essayez de modifier ou de supprimer le nom et voyez ce qui se passe.

Je pense que c'est juste pour que vos URL vous disent à quoi vous attendre, mais l'application n'a pas besoin (ni même utilise) ces informations.

Amazon fait quelque chose de très similaire avec leurs livres, si je me souviens bien: ils ont à la fois l'ASIN (leur ID interne) et le nom du livre dans l'URL, mais ils ne font que rechercher l'ASIN.

Juste spéculer: l’ID permet une récupération très rapide des données présentées par la page de profil. Le nom est juste pour les humains et ignoré car il m'est plus facile de dire que vous êtes rkj et moi, phihag, plutôt que votre identifiant est 37086 et le mien, 35070.

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