PDA

Просмотр полной версии : Декодирование строки вида http%253A%252F%252F


djyamato
30.05.2013, 11:23
Здравствуйте
Не могу найти способ как получить человеческий путь из вот такого http%253A%252F%252F
escape/unescape/decodeURI итд не помогли
В java класс java.net.URLDecoder великолепно с этим справляется, может в AS есть что-то подобное ?

Добавлено через 32 минуты
нашел
http://code.google.com/p/oauth-as3/source/browse/trunk/src/org/iotashan/utils/URLEncoding.as

maincode
30.05.2013, 14:59
trace(unescape(unescape('http%253A%252F%252F')));

выдает http://

Babylon
30.05.2013, 15:05
2 раза?

maincode
30.05.2013, 15:06
2 раза?
так точно, а вот кто и зачем создал такую, дважды закодированную строку - вот это не понятно :)

djyamato
30.05.2013, 17:17
Полный путь для раскодировки выглядит так

http%253A%252F%252Flngg.tv%252Fwp-content%252Fuploads%252Favatars%252F50%252F0bcfae9491ddad258657681fa21bbd47-bpthumb.jpg

это мне ЦМС-ка в куках оставляет

Вышеуказанная библиотека хорошо его раскодирует

Babylon
30.05.2013, 17:21
Вы радостью поделились?

maincode
30.05.2013, 20:41
Вышеуказанная библиотека хорошо его раскодирует


Зачем использовать сторонние библиотеки, если это можно сделать стандартными средствами?


var s:String = 'http%253A%252F%252Flngg.tv%252Fwp-content%252Fuploads%252Favatars%252F50%252F0bcfae9491ddad258657681fa21bbd47-bpthumb.jpg';
trace(unescape(unescape(s)));

выдает:

http://lngg.tv/wp-content/uploads/avatars/50/0bcfae9491ddad258657681fa21bbd47-bpthumb.jpg

djyamato
30.05.2013, 21:32
я же не знаю сколько раз нужно подставить unescape :)