Comment encoder en BASE64 Url?
J'ai été la navigation des torrents à KickAssTorrents.com lorsque je visite un lien, il est codé dans l'adresse url d'une manière différente;
par exemple (IMDb lien): http://kat.ph/account/confirm/url/aHR0cDovL3d3dy5pbWRiLmNvbS90aXRsZS90dDA0MDE3Mjk=/
Maintenant, quand je change un personnage quelque chose change dans le lien et je veux savoir comment le faire en C# ou jQuery ?!
Vous devez vous connecter pour publier un commentaire.
En C#:
Utilisation
System.Text.UTF8Encoding.UTF8.GetBytes(...)
si la chaînetoEncode
contient des caractères en dehors de l'ASCII. Notez que dans ce cas, la partie qui décode l'URL devra être en mesure de gérer correctement ces caractères.Aussi regarder le cas de
=
,+
et/
mentionné par David Hardin pour voir si les problèmes mentionnés s'appliquent à vous. Ou tout simplement l'utilisation de David réponse.jQuery: google 'jquery base64 encode' (le site plugins.jquery.com semble être hors ligne pour le moment, donc je ne peux pas vérifier pour être sûr)
Il est préférable d'utiliser le code ci-dessous à partir de https://stackoverflow.com/a/1789179
Raison en est que Base64 comprend URL non valide caractères.
JavaScript-
Je ne pense pas que l'on a accepté la réponse de Eugene Ryabtsev est correct.
Si vous essayez avec "\xff", vous verrez que :
La raison en est que ASCIIEncoding ne va pas plus loin que le code 127. Tous les caractères de 128 à 255 de ne pas être compris et seront convertis en "?".
Donc, une prolongation de codage est nécessaire comme suit :