Ответ 1
Отметьте этот ответ. В нем упоминаются функции для сжатия/декомпрессии LZW (через http://jsolait.net/, в частности http://jsolait.net/browser/trunk/jsolait/lib/codecs.js).
просто построил небольшой webapp для предварительного просмотра HTML-документов, который генерирует URL: s, содержащий HTML (и все встроенные CSS и Javascript) в кодированных base64 данных. Проблема в том, что URL-адрес: s быстро становится длинным. Каков стандарт "де-факто" (желательно Javascript) для сжатия строки сначала без потери данных?
PS; Я читал о Хаффмане и Лемпеле-Зиве в школе некоторое время назад, и я помню, что действительно наслаждался LZW:)
EDIT:
найденное решение; похоже, что rawStr = > utf8Str = > lzwStr = > base64Str - это путь. Я продолжаю работать над сжатием huffman между utf8 и lzw. Проблема в том, что слишком много символов становятся очень длинными при кодировке base64.
Отметьте этот ответ. В нем упоминаются функции для сжатия/декомпрессии LZW (через http://jsolait.net/, в частности http://jsolait.net/browser/trunk/jsolait/lib/codecs.js).
Вы будете изо всех сил пытаться полностью сжаться по URL-адресу, они слишком коротки и не содержат достаточной избыточной информации, чтобы получить большую пользу от алгоритмов стиля Huffman/LZW.
Если у вас есть ограничения на пространство возможных URL-адресов (например, все содержимое имеет одинаковый набор папок), вы можете жестко закодировать некоторые части URL-адресов для расширения на клиенте - т.е. чит.