Конференция "Сети" » Декодирование канонизированного URL
 
  • Виктор85 (12.07.10 21:36) [0]
    Здравствуйте мастера!

    Проблемы с декодированием URL к нормальному виду.

    Пробовал:
    HTTPDecode из HTTPApp.pas
    UrlCanonicalizeW из ShLwApi.pas
    InternetCanonicalizeUrlW из WinInet

    Цель всего этого - повторить поведение IE.
    Строки на которых проводил тестирование:
    [1]  '%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0'

    [2] 'メインページ%20.html'
    [3] 'メインページ%2520.html'

    Строка [1] должна после преобразования иметь вид: 'Заглавная_страница' и проходить проверку IsUTF8String

    Строка [2] должна превращаться в 'メインページ .html', а строка [3] соответственно в 'メインページ%20.html'

    Функция HTTPDecode портит строку [2] и [3], т.к. ей на вход нужно передавать Ansi строку.

    UrlCanonicalizeW с флагом URL_UNESCAPE для строки [1] дает такой же результат как InternetCanonicalizeUrlW с флагами ICU_DECODE or ICU_NO_ENCODE: 'Заглавна 09;_страни 09;†Ð°'. Т.е. неверный, а строки [2] и [3] обрабатывает прекрасно.

    В общем прошу помощи, поиск мне не помог.
  • Виктор85 (20.07.10 16:54) [1]
    Никто не знает в чем может быть проблема?
 
Конференция "Сети" » Декодирование канонизированного URL
Есть новые Нет новых   [134437   +27][b:0][p:0]