декодирование строки в кодировке base64 с использованием экранированных символов URL - PullRequest
2 голосов
/ 25 января 2010

В настоящее время я работаю над импортом контактов из контактов Windows Live (адресная книга Hotmail). На одном этапе служба отправляет обратно некоторые данные, которые мне нужны, на мою страницу в виде строки в кодировке base64, которая, согласно документации Microsoft, содержит экранированные URL-адреса последовательности для '&' и '='. Таким образом, строка не является стандартным base64. Проблема в том, что когда я пытаюсь преобразовать ее обратно в исходную строку из coldfusion, coldfusion отказывается распознавать это как действительную строку в кодировке base64. Как я могу получить исходную строку?

строка выглядит примерно так: "eact% 253D28grLAdrSYSMp6mYbAozFuDqlgk78UZZ% 25252F5A% 25252Bygx .... (довольно длинный)" Мой cfmethod для преобразования обратно прост - tostring (tobinary ("ENCODED STRING")) // Спасибо Бену Наделю Получена ошибка «параметр 1 tobinary, который не закодирован в base64»

Пожалуйста, помогите ...

1 Ответ

5 голосов
/ 25 января 2010

Вы не можете URLDecode() сначала, тогда у вас должна быть строка base64?

http://livedocs.adobe.com/coldfusion/6.1/htmldocs/funca113.htm

...